匹配换行符前的任意一组字符
Match any group of characters before a line break sign
我正在尝试匹配任何一组字符,直到出现这样的换行符:\n
。我希望能够访问当时匹配的所有组。
我用来查找正则表达式的文本是这样的:
foo foo!\n *bar bar*\n *foo :* foo bar\n*foo :* 32 foo bar\n*Bar :* 37 foo foo\n*Time :* 11:00:00-14:00:00\n*Date :* 2016-12-23\n*Foo :* \n*bar* : 06XXXXXXXX
目前,我尝试了多种解决方案,效果最好的是这个正则表达式:
/([^\n])\w+/
但它仍然不完美。它不考虑特殊字符或空格。
您需要匹配至少一个 (+
) 字符,即 not 换行符 (\n
):
s = 'foo foo!\n *bar bar*\n *foo :* foo bar\n*foo :* 32 foo bar\n*Bar :* 37 foo foo\n*Time :* 11:00:00-14:00:00\n*Date :* 2016-12-23\n*Foo :* \n*bar* : 06XXXXXXXX'
console.log(s.match(/([^\n]+)/g))
我正在尝试匹配任何一组字符,直到出现这样的换行符:\n
。我希望能够访问当时匹配的所有组。
我用来查找正则表达式的文本是这样的:
foo foo!\n *bar bar*\n *foo :* foo bar\n*foo :* 32 foo bar\n*Bar :* 37 foo foo\n*Time :* 11:00:00-14:00:00\n*Date :* 2016-12-23\n*Foo :* \n*bar* : 06XXXXXXXX
目前,我尝试了多种解决方案,效果最好的是这个正则表达式:
/([^\n])\w+/
但它仍然不完美。它不考虑特殊字符或空格。
您需要匹配至少一个 (+
) 字符,即 not 换行符 (\n
):
s = 'foo foo!\n *bar bar*\n *foo :* foo bar\n*foo :* 32 foo bar\n*Bar :* 37 foo foo\n*Time :* 11:00:00-14:00:00\n*Date :* 2016-12-23\n*Foo :* \n*bar* : 06XXXXXXXX'
console.log(s.match(/([^\n]+)/g))