【问题标题】:Regular expression in text editor文本编辑器中的正则表达式
【发布时间】:2015-03-02 10:29:39
【问题描述】:

我需要在notepad++等文本编辑器中将以下所有数字替换为TAB。我尝试了下面的正则表达式,但它仍然需要一些手动工作。任何人都可以帮助在单个正则表达式中实现这一点。

我使用了下面的一个并手动删除了 [1-9]。获取所有行的因素。

\

3.1. Cre
3.1.1. Im
3.1.1.1. O
3.1.1.2. Ce
3.1.1.3. Part
3.1.2. ED
3.1.2.1. Ow
3.1.2.2. ED
3.1.3. OF
3.1.3.1. O
3.1.3.2. O
3.1.3.3. O
3.1.3.4. O
3.1.4. Sc
3.1.5. In
3.1.6. Vi
3.1.7. Bu
3.1.8. Ho
3.1.8.1. Ou
3.1.8.2. In
3.1.9. Pa
3.1.9.1. Re
3.1.9.2. Re
3.1.9.3. Pr
3.1.9.3.1. Ou
3.1.9.3.2. Sp
3.1.9.3.3. In
3.1.9.3.4. In

【问题讨论】:

    标签: regex notepad++ text-editor textpad


    【解决方案1】:

    搜索

    ^3[.1-9]+\s

    替换为

    \t

    它可以在我电脑上的 NotePad++ 中使用。

    更新: NotePad++ 中用于删除项目符号的更通用的正则表达式:

    搜索:^[.0-9]+\s([A-Z])

    替换为\t\1

    【讨论】:

    • 它不会取代3.1.10
    • 3.1.10 不存在于输入中,其字母“O”不为零
    • 好吧,我调整了输入的正则表达式,但如果你需要更通用的东西,当然^[.0-9]+\s([A-Z]) 替换为\t\1 会更好,
    【解决方案2】:
    ^3(?:\.\d+)*\.\s*
    

    试试这个。查看演示。

    https://regex101.com/r/wU7sQ0/39

    【讨论】:

    • 我在notepad++中试过了,它找不到正则表达式,可能是你提到的其他编程语言
    猜你喜欢
    • 2014-07-23
    • 1970-01-01
    • 2020-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-18
    相关资源
    最近更新 更多