python - 寻找包含字母数字 + "&"和 ";"的正则表达式

标签 python regex encoding

问题是:

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/

相关文章:

python - 正则表达式 : pull the data between "FOO" and "BAR"

regex - SED删除C程序注释

iphone - 在 iOS 上使用 Flac 进行分块编码

java - 为什么 ICU4J 在将字节数组读入字符串时返回字节顺序标记?

python eventlet - 文件异步(非阻塞)io

python - 如何将 NumPy 链接到 Eigen3,或 OpenBLAS、GotoBLAS2、ATLAS?

python - Selenium |将多个扩展加载到 Selenium 的 ChromeDriver 中,只接收最后定义的

Javascript:想要找到句子中以@开头的所有单词

c# - 如何将 UTF-8 转换为 HTML 实体中的文本?

python - VIRTUALENV bash :/usr/local/bin/virtualenv:/usr/bin/python: bad interpreter: No such file or directory