2013-08-30 4 views
1

Могу ли я удалить или заменить текст после того, как, наконец, apprearing точка (.)JQuery, как удалить или заменить текст после последнего

ex)OUTsoundfile.123054236.123054236.wav 

Я хочу удалить .wav или заменить .wav с пустой строкой

Невозможно использовать subString, потому что .wav не может существовать во входном тексте.

+0

Используйте фильтр 'contains', чтобы проверить, существует ли в строке .wav, а затем используйте подстроку для замены или удаления. – Maverick

ответ

1

Использование заменить регулярных выражений, например

'OUTsoundfile.123054236.123054236.wav'.replace(/\.wav/,''); 

читать больше о replace function

+0

, в отличие от других предложений, этот безопасен в использовании, даже в тексте нет «.wav» –

1

Это было бы правильно регулярное выражение, чтобы сделать это:

var myString = "ex)OUTsoundfile.123054236.123054236.wav"; 
var output = myString.replace(/\.[^.]*$/, ''); 

http://jsfiddle.net/samliew/3UdLH/

+0

OP не определил конкретно, что является допустимыми расширениями, он просто хочет удалить весь текст после последней точки. –

0

Используя обычный старый JavaScript :

var filename = "OUTsoundfile.123054236.123054236.wav"; 
var pieces = filename.split("."); 
    // pieces is an array that looks like this: 
    // ["OUTsoundfile", "123054236", "123054236", "wav"] 

    // Remove the last element from pieces, i.e. "wav" 
    // If you want to do anything with this last piece, such as check what the 
    // piece you removed was, use the return value of this statement. 
pieces.pop(); 
    // pieces now just looks like this: 
    // ["OUTsoundfile", "123054236", "123054236"] 

    // Put the string back together 
var newFilename = pieces.join("."); 
    // newFilename is now this string: "OUTsoundfile.123054236.123054236" 

Или, без комментариев:

var filename = "OUTsoundfile.123054236.123054236.wav"; 
var pieces = filename.split("."); 
pieces.pop(); 
var newFilename = pieces.join("."); 
0

Попробуйте

var trimwav = "ex)OUTsoundfile.123054236.123054236.wav"; 
alert(trimwav.substr(0,x.lastIndexOf("."))); 
Смежные вопросы