Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正则表达式负前瞻,不包括完整块_Javascript_Regex_Regex Lookarounds_Pcre_Java_Python - Fatal编程技术网

Javascript 正则表达式负前瞻,不包括完整块

Javascript 正则表达式负前瞻,不包括完整块,javascript,regex,regex-lookarounds,pcre,java,python,Javascript,Regex,Regex Lookarounds,Pcre,Java,Python,我正在尝试组合一个正则表达式,从下面的字符串中提取曲面,不包括前面带有日语字符的值 "110.94m2・129.24m2"; --> 110.94m2 and 129.24m2 "81.95m2(24.78坪)、うち2階車庫8.9m2" --> 81.95m2 "80.93m2(登記)" --> 80.93m2 "93.42m2・93.85m2(登記)" --> 93.42m2 and 93.85m2 "81.82m2(実測)" --> 81.82m2 "81.82

我正在尝试组合一个正则表达式,从下面的字符串中提取曲面,不包括前面带有日语字符的值

"110.94m2・129.24m2"; --> 110.94m2 and 129.24m2
"81.95m2(24.78坪)、うち2階車庫8.9m2" --> 81.95m2
"80.93m2(登記)" --> 80.93m2
"93.42m2・93.85m2(登記)" --> 93.42m2 and 93.85m2
"81.82m2(実測)" --> 81.82m2
"81.82m2(実測)、うち1階車庫7.82m2" --> 81.82m2
"90.11m2(実測)、うち1階車庫8.07m2" --> 90.11m2
到目前为止,我已经整理了下面的正则表达式,但不是在所有情况下都有效

(?<![\u4E00-\u9FAF\u3040-\u3096\u30A1-\u30FA\uFF66-\uFF9D\u31F0-\u31FF])([0-9\.]*m2)
您是否知道如何将以下消极展望视为排除


谢谢

如果前面有数字或数字+句点,您需要取消任何匹配

在第一次查找之后或之前添加
(?)

(?<![\u4E00-\u9FAF\u3040-\u3096\u30A1-\u30FA\uFF66-\uFF9D\u31F0-\u31FF])(?<!\d)(?<!\d\.)(\d+(?:\.\d+)?m2)
请参见下面的用法示例

JS ES2018+演示:

const lst=[“110.94m2・129.24m2”、“81.95m2(24.78坪)、うち2.階車庫8.9平方米、80.93平方米(登記)", "93.42平方米・93.85平方米(登記)", "81.82平方米(実測)" , "81.82平方米(実測)、うち1階車庫7.82平方米,“90.11平方米(実測)、うち1階車庫8.07m2”];
常量正则表达式=/(?)?
console.log(s'=>',s.match(regex))
);
log(“另一种方法:”);
lst.forEach(s=>

console.log,“=>”,s.match(/(?您必须将
\d.
添加到排除类:
(?(或
0-9\.
,如果您的方言迫使您这样做:P)Goul很高兴为您服务。请考虑接受答案。实际上,抱歉,它在我正在使用的在线测试仪上实现得很好,但不是在代码中。我正在使用JavaScript,似乎您的例子是Python。只是在您共享的站点中找到了代码生成器,工作得很好,谢谢!@ Goul我为所有浏览器添加了JS代码片段。
(?<![\u4E00-\u9FAF\u3040-\u3096\u30A1-\u30FA\uFF66-\uFF9D\u31F0-\u31FF])(?<!\d)(?<!\d\.)(\d+(?:\.\d+)?m2)
/([\u4E00-\u9FAF\u3040-\u3096\u30A1-\u30FA\uFF66-\uFF9D\u31F0-\u31FF])?(\d+(?:\.\d+)?m2)/g