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
如何匹配Emacs regexp中的任何字符串?_Regex_Emacs - Fatal编程技术网

如何匹配Emacs regexp中的任何字符串?

如何匹配Emacs regexp中的任何字符串?,regex,emacs,Regex,Emacs,我指的是这一页: 也就是说,要在Emacs Regexp中捕获模式,您需要像这样转义参数:\(myPattern\) 它进一步说明,用于捕获ASCII字符序列的语法是[[:ASCII:]+ 在我的文档中,我试图匹配出现在和之间的所有字符串 因此,按照上面的语法,我为 \([[:ascii:][]+\) 但它找不到匹配项 建议?您需要避开尖括号,我会使用[^\([^regexp不适合通用HTML解析,但由于段落标记无法有效嵌套,因此以下内容可以(只要标记有效且格式良好) \(.*?\) *?是非

我指的是这一页:

也就是说,要在Emacs Regexp中捕获模式,您需要像这样转义参数:
\(myPattern\)

它进一步说明,用于捕获ASCII字符序列的语法是
[[:ASCII:]+

在我的文档中,我试图匹配出现在

之间的所有字符串

因此,按照上面的语法,我为

\([[:ascii:][]+\)

但它找不到匹配项


建议?

您需要避开尖括号,我会使用[^

\([^regexp不适合通用HTML解析,但由于段落标记无法有效嵌套,因此以下内容可以(只要标记有效且格式良好)

\(.*?\)

*?
是非贪婪的零或更多重复运算符,因此它将尽可能少地匹配—在本例中,所有内容都将匹配到下一个

(与贪婪版本相反,贪婪版本将匹配所有内容,直到文本中的最后一个


[^1您在结束语中丢失了一个\我修复了它并尝试了它,但仍然没有匹配项。尽管我的文档中包含了很多这样的字符串

1 April Fool 3

我认为没有必要跳过尖括号,但这对我来说很有效

\([^@TooTone您的语法

\([^这是不必要的,

>
\(我的解决方案基于Dave对[^的替换,我猜您有一些非ascii代码(代码0-127)字符。可能是一些unicode?出于好奇,为什么regexp不适合HTML解析?什么是更好的选择?关于前者的可搜索讨论没有结束。一个内置的通用HTML解析更好的选择是
\<p class="calibre3"\>([^<]+\)</p\>
<p class="calibre3">\(.*?\)</p>