我有这样的字符串:
SadnessSorrowSadnessSorrow
单词串联在一起,没有任何空格。每个单词都以大写字母开头。我想将这些单词分开,然后选择前2个单词放入新字符串中。
我需要在使用preg_match
函数的php应用程序中执行此操作。
我应该怎么做?
我尝试使用[A-Z]
,但是由于某种原因我无法正确使用它。
参考方案
在这里,我们还可以将字符串除以大写字母,可能类似于:
$str = "SadnessSorrowSadnessSorrow";
$str_array = preg_split('/\B(?=[A-Z])/s', $str);
foreach ($str_array as $value) {
echo $value . "\n";
}
根据bobble bubble的建议,最好使用\B(?=[A-Z])
代替(?=[A-Z])
,否则我们可能会使用PREG_SPLIT_NO_EMPTY
。
输出量
Sadness
Sorrow
Sadness
Sorrow
php preg_replace两个或更多空格 - php我正在寻找替换多个空格字符的实例。我最初的搜索似乎都集中在使用/s,但这包括换行符和其他空格我认为应该接近吗?用一个空格替换两个或更多实例空格" "preg_replace('/ {2,}/', ' ', $string); 参考方案 尝试一下:preg_replace('/\s\s+/&…
php preg_replace电话号码 - php我想用html字符串替换给定的电话号码,例如<a>click here now! (123) -456-789</a> 我认为最好的解决方法是找到所有看起来像电话号码的不同情况,例如:$pattern = *any 3 numbers* *any characters up to 3 characters long* $pattern…
PHP:Preg_replace,单词边界和非单词字符 - php我需要替换文本中以井号(#)开头的单词。好吧,我知道如何替换整个单词。preg_replace("/\b".$variable."\b/", $value, $text);由于该\ b修饰符仅接受单词字符,因此不会替换包含井号的单词。我有这个html,其中包含#companyName类型的变量,我将其替换为一个值。 参…
preg_replace转义斜杠 - php模式包含斜线时出现未知的修饰符错误码:preg_replace('/$v/', $replacement, $string) var $ v,有时是目录路径。$v = folder/folder/file.ext 如何处理preg_replace中的$ v? 参考方案 回滚到我的原始答案,因为事实证明这是可行的,而且dany接受了我的答案…
PHP preg_replace删除字符串中的第一个HTML元素 - php我想在PHP中删除html字符串(始终是一个段落)的整个第一个元素。我目前的方法是使用:$passage = preg_replace('/.*?\b'.'</p>'.'\b/s', '', $passage, 1); 由于</p>中的特殊字符,此方法不起…