正则表达式匹配以字符串结尾或无结尾的字符串。

4
我想匹配以javascript编码字符(%20,%u200E等)或行尾结束的字符串。
我有这个正则表达式:(/\w*?)*(?=(%\w{2,}|[\s/])),它可以匹配这些部分中的/text部分:

/text
/text
/text%20
/text%u200E

但是在这个中没有匹配任何内容:/text (结尾没有字符,甚至没有新行)

$ = end of the line. - Ginden
1个回答

5

将您的正则表达式更改为:

/(?:\/\w*)*(?=(?:%\w{2,})|[\s/]|$)/;

由于您的输入末尾没有换行符\n,因此只需使用输入结束锚点$即可完成任务。


哇,我非常确定我也尝试过这个,不敢相信它如此简单,谢谢你。 - Iulian Onofrei

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接