<分区>
function trim(str) {
var trimer = new RegExp("(^[\\s\\t\\xa0\\u3000]+)|([\\u3000\\xa0\\s\\t]+\x24)", "g");
return String(str).replace(trimer, "");
}
为什么's'和't'前有两个'\'?
这个“[\s\t\xa0\u3000]”是什么意思?
标签 javascript regex
<分区>
function trim(str) {
var trimer = new RegExp("(^[\\s\\t\\xa0\\u3000]+)|([\\u3000\\xa0\\s\\t]+\x24)", "g");
return String(str).replace(trimer, "");
}
为什么's'和't'前有两个'\'?
这个“[\s\t\xa0\u3000]”是什么意思?
最佳答案
您正在使用 literal string .
在文字字符串中,\
字符用于转义一些其他字符,例如 \n
(新行)或 \"
(一个双引号),并且必须将其自身转义为 \\
。因此,当您希望您的字符串具有 \s
时,您必须编写 \\s
在你的字符串文字中。
谢天谢地,JavaScript 提供了更好的解决方案,Regular expression literals :
var trimer = /(^[\s\t\xa0\u3000]+)|([\u3000\xa0\s\t]+\x24)/g
关于javascript - 为什么正则表达式中有两个 '\'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30843265/
相关文章:
javascript - 使用 Javascript not 运算符时出现奇怪的结果
regex - 有没有办法使用正匹配正则表达式运算符对字符串进行负匹配?
regex - 脚本 : How to capitalize a specific character of matched text in a substitution?
javascript - postman 从 JSON 中获取值,其中使用 javascript 等于数组中的值
javascript - 数量价格折扣 html/java/php
javascript - 传入一个函数,进入一个函数,稍后用参数执行?可以作为单个参数吗?