Eli*_*Eli 11 regex unicode perl character-properties
我有一些文件经过OCR从PDF转换为HTML.因此,他们最终有很多随机的unicode标点,转换器搞砸了(即elipses等).他们也正确地拥有一堆非英语,但仍然是字母字符,如é和俄语字符等...
有没有办法制作一个匹配任何unicode字母字符(来自任何语言的字母)的正则表达式?或者只匹配非字母字符的那个?任何一个都会非常有用而且非常棒.我正在使用Perl,如果这改变了什么.谢谢!
mpd*_*rty 29
查看Unicode字符属性:http://www.regular-expressions.info/unicode.html#prop.我想你正在寻找的可能是
\p{L}
Run Code Online (Sandbox Code Playgroud)
这将匹配任何字母或表意符号.您可能还希望在其上添加带有标记的字母,这样您就可以做到
\p{L}\p{M}*
Run Code Online (Sandbox Code Playgroud)
在任何情况下,所有不同类型的字符属性都在第一个链接中详细说明.
编辑:您可能还想查看此Stack Overflow答案,讨论\ w是否匹配unicode字符.他们建议您也可以使用\ p {Word}或\ p {Alnum}: 是否匹配Unicode标准中定义的所有字母数字字符?