Javascript 正则表达式匹配最后一个字符
我想使用正则表达式选择上面的第二行文本。如何在这里抓住2的绳子的末端?我卡住了Javascript 正则表达式匹配最后一个字符,javascript,regex,Javascript,Regex,我想使用正则表达式选择上面的第二行文本。如何在这里抓住2的绳子的末端?我卡住了 data:text/javascript;base64,Ly8gSGVyZdsdsd:5 data:text/javascript;base64,Ly8gSGVyZdsdsd:2 data:text/javascript;base64,Ly8gSGVyZdsdsd:1 您可以使用非常简单的模式 ^.*$ $ 简短的解释表示任何字符,或每个非空白字符,它应该是最后一个字符。这是因为$这意味着它应该是最后一件事 现在
data:text/javascript;base64,Ly8gSGVyZdsdsd:5
data:text/javascript;base64,Ly8gSGVyZdsdsd:2
data:text/javascript;base64,Ly8gSGVyZdsdsd:1
您可以使用非常简单的模式
^.*$
$
简短的解释
表示任何字符,或每个非空白字符,它应该是最后一个字符。这是因为$
这意味着它应该是最后一件事
现在只需使用favoritt语言实现它,例如js:
var string=“你好,世界!”;
Var match=string.match(/.$/)代码>
(不确定match现在的值是“!”还是只有布尔值,js不是我最强大的语言)为什么只有第二行?标准是什么?可能:result=string.match(/^.*2$/m)[0]
@user6188402数据:text/javascript;base64,LY8GSGVYZDSD:2您的问题不够明确。为什么要选择第二行?因为它以2结尾?有很多人已经为此提供了解决方案。不能在正则表达式中选择行号。正则表达式解析字符串、字符\n只是一个字符……不,为什么不能检测出哪一行的数字是2,然后匹配它呢?所以你想匹配一行以2
?str.match(/.*:2$/m)
什么意思?/m
代表多行。如果没有这个选项,$
将在字符串的末尾匹配,其中与此一样,它将匹配每行的末尾@Alienxu这仅当您需要任何行的最后一个字符时,而不只是以“2”结尾的字符
string.match(/.*2$/m)
=> ["data:text/javascript;base64,Ly8gSGVyZdsdsd:2"]