问题是:
split=re.compile('\\W*')
这个正则表达式在处理常规单词时效果很好,但有时我需要表达式包含像 käyttäj&aml;auml;
这样的单词。
我应该向正则表达式添加什么以包含 &
和 ;
字符?
最佳答案
我会将实体视为一个单元(因为它们也可以包含数字字符代码),从而产生以下正则表达式:
(\w|&(#(x[0-9a-fA-F]+|[0-9]+)|[a-z]+);)+
这个匹配
- 要么是一个单词字符(包括“
_
”),要么 - 一个 HTML 实体,包含
- 字符“
&
”,- 字符“
#
”,- 字符“
x
”后跟至少一个十六进制数字,或者 - 至少一位小数,或
- 字符“
- 至少一个字母(=命名实体),
- 字符“
- 分号
- 字符“
- 至少一次。
/编辑:感谢 ΤZΩΤZΙΟΥ 指出错误。
关于python - 寻找包含字母数字 + "&"和 ";"的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/152218/