【问题标题】:REGEX How do I match all of the middle of a sentence?REGEX 如何匹配一个句子的所有中间部分?
【发布时间】:2022-11-20 03:57:33
【问题描述】:

我需要正则表达式用第一个词、新词、最后一个词替换长字符串中的所有内容。我可以匹配第一个和最后一个没问题,但我遇到了各种各样的问题试图匹配中间。 样本数据:

tunnel4 connection to router 1 status
gig1/0/1 blah status
g2/0/1 foo bandwidth

输出:

tunnel4 router1 status
gig1/0/1 router1 status
g2/0/1 router1 bandwidth

匹配第一个单词作品:

^([^\s]+)

匹配最后一个词的作品:

([^\W]+$)

替换将是 $1 router1 $2 但我不知道如何匹配中间。我试图将第一个空格与最后一个空格匹配,但我似乎无法让它工作。

【问题讨论】:

    标签: regex


    【解决方案1】:

    你可以试试

    ^([^s]+ ).*( .*)
    

    在这里查看demo

    【讨论】:

    • 我发誓我试过了,但失败了!哎呀!太感谢了!我在用头撞墙!
    猜你喜欢
    • 2019-09-23
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 2020-01-15
    • 2017-11-28
    • 2021-03-09
    • 2021-06-13
    • 2017-01-12
    相关资源
    最近更新 更多