regex - 如何使用正则表达式查找化学式

标签 regex scientific-notation

这个问题可能不是一个特定的编程问题,但是,我尝试在科学文本中找到 H20、C02 等化学式,我使用这个:

(?<=[\l\u]|\.)\d+

这可行 - 但现在也可以找到“点”之后的每个 float :

0.1234 -> 1234 is selected.

有办法阻止这种情况吗?提前致谢!

最佳答案

您还可以添加 negative lookbehind防止前面带有数字的点:

(?<=[\l\u.])(?<!\d\.)\d+

关于regex - 如何使用正则表达式查找化学式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15395717/

相关文章:

C 编程中使用正则表达式检查字符串是否全是字母数字

python - 格式化/抑制 Pandas 聚合结果的科学记数法

javascript - Javascript 科学记数法覆盖

python - 将二维字符串数组转换为 python_removing 科学记数法中的 float

ruby - 如何在ruby中获取两个字符串之间的文本?

python通过http将正则表达式传递给mongo

c# - 使用正则表达式按非数字和数字拆分字符串

regex - 用于从文本中解析名称和电子邮件的正则表达式

c# - 在 C# 中,如何在不使用 e 表示法的情况下向控制台写入一个小数字?