正则表达式不允许数字

时间:2016-12-02 13:28:12

标签: regex web-scraping

使用http://www.regexr.com/试图获得仅匹配字母,空格和标点符号的正则表达式。例如,我有一堆数据如下所示:

1. "Ever stop to think, and forget to start again?" - Some Guy

等等。我怎样才能使用正则表达式获取除初始数字和周期之外的所有内容?

我的正则表达式现在如下,但似乎抓住了数字:

^(\s+|\d+|\w+|[^\d\s\w])+$

3 个答案:

答案 0 :(得分:1)

只需将数字和句点替换为字符串:

HTTP

正则表达式var str = '1. "Ever stop to think, and forget to start again?" - Some Guy'; console.log(str.replace(/^\d+\. /, ''));正在寻找:

  • 在字符串的开头:\d+\.
  • 一个或多个号码:^
  • 后跟一段时间:\d+
  • 后跟空格:\.

然后用空字符串替换匹配的部分

答案 1 :(得分:0)

使用replacestr.replace(/^[0-9. ]+(.*)/, '$1')

Javascript不支持

Look-behind,所以这不能仅仅通过匹配来完成(在语言支持时,模式"在&#34后面看;通常不能有可变长度)。但您可以匹配".*[ ].*等内容。

答案 2 :(得分:0)

您可以将捕获组包装在除行开头之外的所有内容中,其中应包含要排除的特定模式..所以:

Account1 contains data for Finance, HR data in Frankfurt region. Account2 contains data for Finance, HR data in Northern Virginia region.

使用它应该专门返回数字和句点后面的空格后的所有内容,但仅限于

中的空格