繁体   English   中英

正则表达式:如何使用多个新行提取文本直到字符串结尾?

[英]Regex: how to extract text until end of string with multiple new lines?

我希望它匹配每个文本并且足够灵活以读取多行而不是单行。

文本单输入示例

383 Bukit Timah Road #01-09B Alocassia Apartments Singapore 259727

多行文本示例

383 Bukit Timah Road 
#01-09B Alocassia Apartments 
Singapore 259727

448 Ang Mo Kio 
Avenue 10 #01-1693 
Singapore 560448

383 Bukit Timah Road 
#01-09B Alocassia Apartments 
Singapore 259727

正则表达式:

(\d+ .*\d{6}\b)

您正在寻找的是s标志(单行:点匹配换行符)。 https://regex101.com/r/ZTP1hC/1

使用[^] (特定于 JavaScript Regex)匹配任何字符,包括换行符

正则表达式是:

^(\d+ [^]*?\b\d{6})$

演示和说明

 var test = [ `383 Bukit Timah Road #01-09B Alocassia Apartments Singapore 259727`, `383 Bukit Timah Road #01-09B Alocassia Apartments Singapore 259727`, `448 Ang Mo Kio Avenue 10 #01-1693 Singapore 560448`, `383 Bukit Timah Road #01-09B Alocassia Apartments Singapore 259727`, `123 blah blah`, `blah blah 123456`, `123 blah blah 1234567` ]; console.log(test.map(function (a) { return a + ' :' + /^(\\d+ [^]*?\\b\\d{6})$/.test(a); }));

暂无
暂无

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

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