您好,只有在单词前有空格或没有空格的情况下,我才能编写正则表达式来匹配单词吗?
currenlty,我的正则表达式类似于/(R)(\ )([0-9]+)/gi
,它与不带空格的单词匹配。
我要匹配R 23,r30(如果后面跟空格或不带空格)。
例如:
const str = 'R 34 r 45, for 2 a day';
console.log(str.replace(/(R)(\ )([0-9]+)/gi,'R$3'))
//prints "R34R45, foR2 a day"
//expected "R34 R45, for 2 a day"
答案 0 :(得分:3)
您需要在R之前加上单词边界并且无需捕获,可以改用lookahead。
搜索:\bR (?=\d)
并替换为R