繁体   English   中英

REGEX定位两个单词之间的所有文本,包括单词

[英]REGEX to target all text between two words including the words

我有一个WordPress功能,希望删除部分拦截。 现在,波纹管代码仅能100%解决问题,因为文本不是静态的,因此我需要确定一个范围,使其在所有电位计上都能正常工作。

这是下面的代码:

    function trim_excerpt($text)
{
    return str_replace('Samurai Swords, Ninja Napkins, Samurai Dishes, Art Plates:,', ' ', $text);
}
add_filter('get_the_excerpt', 'trim_excerpt');

我试图制作一个正则表达式来捕获所有文本,从《武士剑》开始,直到Plates:但是我做不到,因为我不知道regEx。

(唯一的标准单词将是“ Samurai Swords”和“ Art Plates”,其余所有内容都可以更改。这就是为什么我将“ Samurai Swords-> Plates”作为单词的原因)

有什么帮助吗?

您可以使用下面的正则表达式来捕获从“ Samurai Swords到“ Art Plates:所有文本。 [\\S\\s]*? 与任何空格或非空格字符匹配零次或多次(非贪婪)。

(Samurai\s*Swords[\S\s]*?Art\s*Plates:)

在这里使用preg_replace()代替。

$text = preg_replace('/Samurai\s*Swords.*?Art\s*Plates:/s', '', $text);

这将匹配从“ Samurai”到“ Plates:”的所有内容,并将其替换为空值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM