gpt4 book ai didi

php - 正则表达式保留/匹配以某个字符开头的任何单词

转载 作者:行者123 更新时间:2023-11-28 16:17:06 24 4
gpt4 key购买 nike

我只想保留以 # 或 @ 开头的字符串

  1. foobar @sushi - 芥末
  2. foobar #sushi - 辣根

因此,仅匹配 @susui 或删除其周围的文本。 PHP 或 JavaScript。

最佳答案

根据您如何定义“单词”,您可能想要

(?<=\s|^)[@#]\S+

(?<=\s|^)[@#]\w+

说明:

(?<=\s|^)  # Assert that the previous character is a space (or start of string)
[@#] # Match @ or #
\S+ # Match one or more non-space characters
(or \w+) # Match one or more alphanumeric characters.

所以,在 PHP 中:

preg_match_all('/(?<=\s|^)[@#]\S+/', $subject, $result, PREG_PATTERN_ORDER);

为您提供一个数组$result,其中包含字符串$subject中的所有匹配项。在 JavaScript 中,这不起作用,因为不支持lookbehinds(正则表达式开头的“Assert...”部分)。

关于php - 正则表达式保留/匹配以某个字符开头的任何单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11171305/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com