Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 正则表达式获取注释标记之间的字符串(/*string*/)_Php_Regex - Fatal编程技术网

Php 正则表达式获取注释标记之间的字符串(/*string*/)

Php 正则表达式获取注释标记之间的字符串(/*string*/),php,regex,Php,Regex,我需要获取介于/**/注释标记之间的字符串。我正在尝试解析一个文件,并只获取其中注释标记之间的字符串。我不太会使用正则表达式。因此,任何建议都将不胜感激。我已经试过一些了,但都不管用 示例字符串将是。是的,在/*之后和*/之前有一个换行符 /* Comment Here Comment Here */ 如果使用/作为分隔符,则会很棘手,因为正则表达式中的斜杠需要转义,因此请使用不同的分隔符: “#/\*(.*?\*/#s” 最后一个定界符后的s是。您没有说您使用的是什么语言,但是这个正则表

我需要获取介于
/**/
注释标记之间的字符串。我正在尝试解析一个文件,并只获取其中注释标记之间的字符串。我不太会使用正则表达式。因此,任何建议都将不胜感激。我已经试过一些了,但都不管用

示例字符串将是。是的,在
/*
之后和
*/
之前有一个换行符

/*
 Comment Here
 Comment Here
*/

如果使用
/
作为分隔符,则会很棘手,因为正则表达式中的斜杠需要转义,因此请使用不同的分隔符:

“#/\*(.*?\*/#s”
最后一个定界符后的
s
是。

您没有说您使用的是什么语言,但是这个正则表达式适用于java(不需要转义
/
):


第1组(即
\1
)有您要查找的内容

不确定您要查找的是什么正则表达式,但您可以找到一个关于使用正则表达式查找注释的很好的讨论。看看吧,这并不像这里的几个早期答案所说的那么简单

但是,请注意,站点上的正则表达式与注释匹配——然后需要应用此处的其他答案之一,根据需要提取文本。

在php中,使用此

if (preg_match('%/\*(.*?)\*/%s', $subject, $matches)) {
    $result = $matches[1];
} else {
    $result = "";
}
如果你愿意,你也可以修剪火柴

$result = trim($matches[1]);

嗨,波希米亚人。。我正在使用PHP。对不起,我忘记提了。我正在使用PHP。对不起,我忘记提了……)
if (preg_match('%/\*(.*?)\*/%s', $subject, $matches)) {
    $result = $matches[1];
} else {
    $result = "";
}
$result = trim($matches[1]);