【问题标题】:Normalize sentence punctuation in php?规范化php中的句子标点符号?
【发布时间】:2014-03-24 19:21:12
【问题描述】:

我有很多要规范化的输入句子。 它们的共同点是逗号和句点后没有空格。

Oval,delicate cupcakes.Very tasty.Enjoy.

标准化此类句子的最快方法是什么?

【问题讨论】:

    标签: php regex punctuation


    【解决方案1】:

    你可以使用:

    $sentence = preg_replace('/([,.])(?!\s)/', '$1 ', $sentence);
    
    • [.,] - 匹配点或逗号
    • ([.,]) - 匹配和分组以供反向引用
    • (?!\s) 是负前瞻,这意味着如果后面没有空格则匹配

    【讨论】:

      【解决方案2】:

      试试这个正则表达式:

      $string = preg_replace("/([,.])(?!\s|$)/", "$1 ", $string);
      

      使用负前瞻(?!\s|$) 检查,. 是否不在空格或行尾之前。

      如果您想获得更详细的正则表达式解释,只需使用this link

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-25
        • 2012-04-25
        • 1970-01-01
        • 2012-07-07
        • 1970-01-01
        • 2021-06-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多