繁体   English   中英

对正则表达式代码不起作用感到困惑

[英]Confused about regular expression code not working

var regex=/\u00E(0|1)/g;

我想在字符串中找到àá 这个正则表达式正确吗? 为什么不起作用?

改用

var regex= /[\u00E0\u00E1]/g;

您正在破坏表达式中的Unicode序列,未完成的序列将被解释为文字'\\\\u00E\u0026#39;

也就是说,您可以将这些字符放在表达式本身中:

var regex = /[àá]/;

regex.text('állo'); // true

它将不起作用,因为Unicode转义序列\\u\u003c/code>期望在这样的序列之后加上四个十六进制数字: \\uNNNN其中每个N是一个十六进制数字。

而是在正则表达式中使用文字字符,例如@Jacks解决方案,或使用@Fabrizio的解决方案。

字面量必须明确。 你需要

var regex=/\u00E0|\u00E1/g;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM