正则表达式来寻找最后的空格字符

问题描述:

我在找一个正则表达式,它会给我使用javascript的字符串中最后一个空格的索引。正则表达式来寻找最后的空格字符

我正在使用goolge找到合适的正则表达式,但没有成功。 即使SO-Question Regex to match last space character也没有解决方案,因为最终的目标是删除多个字符。

什么是正确的正则表达式?

+3

你不能使用'“str”.lastIndexOf('')'? – Paulpro

正如我所评论的那样只是使用lastIndexOf(),但这里是一个正则表达式解决方案:

正则表达式/ [^ ]*$/找到字符串中的最后一个空格字符。像这样使用它:

// Alerts 9 
alert("this is a str".search(/ [^ ]*$/)); 
+0

+1感谢那个跨浏览器的解决方案 – Thariama

+0

它**在IE中工作。你可能会讨论Array.lastIndexOf,它在任何地方都不支持。 – ThiefMaster

+0

关于正则表达式解决方案的最好的事情是,可以很容易地扩展到查找任何空白字符的最后一个索引,这在我之前需要进行文本处理,例如,防止分词中间词:'mystr.search(/ \ s \ S * $ /)'。实际上,这可以进行简单的扩展以找到匹配任何字符类或类组合的字符串中的最后一个字符。 –

正确的解决方案根本不使用正则表达式,但内置的lastIndexOf方法字符串具有。正则表达式是为了匹配字符串,而不是给你索引(即使分组匹配可能作为索引+长度而不是字符串返回 - 基于C的正则表达式库通常会这样做以避免不必要的复制)

+0

谢谢,这解决了我的问题。我一直在精神上修复寻找一个正则表达式,而不是寻找其他的解决方案,*德哦*。 – Thariama