我试图弄清楚如何使用php在一个范围内包装字符串的前两个单词,它与此类似:
Wrap first and second word in span Clases PHP
但是在一个范围内我需要两个字。例如:
输入字符串:
Apartment 1 8 Share
预期输出:
<span>Apartment 1</span> 8 Share
答案 0 :(得分:1)
尝试这个最简单的。
正则表达式: ^([^\h]+\s[^\h]+)
我们可以选择使用^(\s*[^\h]+\s[^\h]+)
,如果空白处于非常开始状态。\s*
则为零空格。
1。
^
字符串的开头。2。
[^\h]
匹配,水平空格除外。3.
\s
这将匹配空格。4.
[^\h]+
匹配除水平空格以外的所有内容。5.
()
将捕获$1
中第一个被捕获的群组
我们可以选择使用\s
代替\h
。
<?php
ini_set('display_errors', 1);
$string="Apartment 1 8 Share";
echo preg_replace("/^([^\h]+\s[^\h]+)/", "<span>$1</span>", $string);