- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我找到了这个优秀的指南:http://www.regular-expressions.info/unicode.html#category这给出了一些关于如何将 non 字母与以下正则表达式匹配的提示:
\P{L}
但是这个正则表达式也会考虑非字母 à
编码为 U+0061 U+0300(如果我理解得很好的话)。例如使用 regex python 中的模块以下代码段:
all_letter_doc = regex.sub(r'\P{L}', ' ', doc)
将 purè
转换为 pur
指南中提供了如何将所有字母与以下内容匹配:
\p{L}\p{M}*+
在实践中我需要否定它,但我不知道如何获得它。
最佳答案
由于您使用的是 Python 2.x,您的 r'\P{L}'
是一个字节字符串,而您的输入是 Unicode。您需要将模式设为 Unicode 字符串。查看PyPi regex
reference :
If neither the
ASCII
,LOCALE
norUNICODE
flag is specified, it will default toUNICODE
if the regex pattern is a Unicode string andASCII
if it’s a bytestring.
因此,您需要使用 ur'\P{L}'
和 u' '
替换模式。
如果您想匹配除字母和变音符号以外的 1+ 个字符,您将需要 ur'[^\p{L}\p{M}]+'
正则表达式。
关于python - 正则表达式匹配所有非字母,不包括变音符号(python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38557116/
我想解析以下 xml 结构: 为了解析这个 element name="?????? 结构,我按以下方式使用 XPath: XPath xPath
我在 OSX 机器上运行 Python 2.7。我正在尝试在 smb 共享上执行 os.walk。 for root, dirnames, filenames in os.walk("./test")
我是一名优秀的程序员,十分优秀!