PHP preg_match_all
我想问一下php的preg_match_all。假设我们有下面的示例字符串:
这是一个包含 -value1- 和 -_value_2_- 的子句,其子子句包含 -value.3- 项。
我想提取所有以“-”开头和“-”结尾的字符串。所需的输出应该是:
Array
(
[0] => Array
(
[0] => -_value1_-
[1] => -_value_2_-
[2] => -_value.3_-
)
)
I would like to ask about php's preg_match_all. suppose we have the sample string below:
This is a clause with -value1- and -_value_2_- having a subclause of -value.3- items.
And i would like to extract all strings with the opening "-" and closing "-" characters. Needed output should be:
Array
(
[0] => Array
(
[0] => -_value1_-
[1] => -_value_2_-
[2] => -_value.3_-
)
)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
使用以下简单正则表达式之一
/-.*?-/
或/-.*-/U
Use one of the following simple regexps
/-.*?-/
or/-.*-/U
您可以使用此代码:
You can use this code:
有时
preg_match_all()
可能过于复杂。在这些情况下,您可以使用explode
来实现此目的。explode()
的作用是什么?explode()
将$matches
转换为数组。之后,在$input
中搜索“-”字符。找到“-”后,它将设置如下所示的数组。$input[0]
---> “这是一个基本示例:”$input[1]
---> “约翰”$input[2]
---> “.The End”explode()
是另一种方式。但最好的当然是preg_match_all()
Sometimes
preg_match_all()
can be too complicated. In these cases you can useexplode
for this aim.What
explode()
does?explode()
converts$matches
to an array. After that searches$input
for "-" character. After finding the "-" it will set array like below.$input[0]
---> "This is a basic example: "$input[1]
---> "JOHN"$input[2]
---> ". The End"explode()
is an alternative way. But the best one is of coursepreg_match_all()
您可以使用 T-Regx 库 自动添加分隔符,
结果是
You could use T-Regx library that automatically adds delimiters
the result is