Heim  >  Artikel  >  Backend-Entwicklung  >  如何获取字符串中的内容?

如何获取字符串中的内容?

WBOY
WBOYOriginal
2016-06-06 20:35:001597Durchsuche

$str = "你好,欢迎使用[args1].我们会马上给你发货,地址:[args2]";

如何获取[args1]和[args2];是不是一般都的正则进行匹配?

正则水平有点烂,/^(\[)*(\])$/ 匹配有问题呢?
请指教!

回复内容:

$str = "你好,欢迎使用[args1].我们会马上给你发货,地址:[args2]";

如何获取[args1]和[args2];是不是一般都的正则进行匹配?

正则水平有点烂,/^(\[)*(\])$/ 匹配有问题呢?
请指教!

JavaScript版

用match

<code>var str = '你好,欢迎使用[args1].我们会马上给你发货,地址:[args2]';
var re = /\[\w+\]/g;
var matches = str.match(re);
console.log(matches[0],matches[1]);
</code>

用exec

<code>var str = '你好,欢迎使用[args1].我们会马上给你发货,地址:[args2]';
var re = /\[\w+\]/g;
while((matches =re.exec(str)) != null){
    console.log(matches[0]);
}
</code>

有点复杂

<code>var str = '你好,欢迎使用[args1].我们会马上给你发货,地址:[args2]';
var re = /[\u4e00-\u9fa5]/;
console.log(str.split(re).filter(function(value){return /\[\w+\]/.test(value)}))
</code>

还需要对返回的数组做一下简单就行。

文章:JavaScript正则表达式
正则表达式笔记

PHP版

preg_match

<code><?php header("content-type:text/html;charset=utf8");
$str = '你好,欢迎使用[args1].我们会马上给你发货,地址:[args2]';
$re = '/.+(\[\w+\]).+(\[\w+\])/';
if(preg_match($re,$str,$matches)){
     echo $matches[1]."<br />";
     echo $matches[2]."<br>";
}
?>
</code>

preg_match_all

<code><?php header("content-type:text/html;charset=utf8");
$str = '你好,欢迎使用[args1].我们会马上给你发货,地址:[args2]';
$re = '/\[\w+\]/';
if(preg_match_all($re, $str, $matches)){
     echo $matches[0][0]."<br />";
     echo $matches[0][1]."<br>";
}
?>
</code>

相关文章:php中的字符串和正则表达式

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn