Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.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 在:-用正则表达式在字符串中签名之前获取单词_Php_Regex_String - Fatal编程技术网

Php 在:-用正则表达式在字符串中签名之前获取单词

Php 在:-用正则表达式在字符串中签名之前获取单词,php,regex,string,Php,Regex,String,我需要在签字前拿到金额。 所以字符串应该是:bla bla 120:- 然后在一个变量中只存储120 preg_match_all('!(\d+):-!', $string, $matches); print_r($matches); 这应该可以做到。它捕获任何在“:”之前小于等于空白的内容 这应该可以做到。它捕获在正则表达式“:-”之前的任何空格 /(-?\d+):-/ 将捕获字符串中“:”之前的任何数字(以及负号,如果有) 您可以将其解析为一个数字并存储。正则表达式 /(-?\d+):-

我需要在签字前拿到金额。 所以字符串应该是:bla bla 120:-

然后在一个变量中只存储120

preg_match_all('!(\d+):-!', $string, $matches);
print_r($matches);
这应该可以做到。它捕获任何在“:”之前小于等于空白的内容

这应该可以做到。它捕获在正则表达式“:-”

之前的任何空格

/(-?\d+):-/
将捕获字符串中“:”之前的任何数字(以及负号,如果有)

您可以将其解析为一个数字并存储。

正则表达式

/(-?\d+):-/
将捕获字符串中“:”之前的任何数字(以及负号,如果有)


您可以将其解析为一个数字并存储。

或\d+代替\S+,如果您只想匹配数字。因为他要求的是“金额”,这将允许在:-是的,我看到了,但不是在发布答案之前。更正了;)很抱歉犯了这个愚蠢的错误。如果您只想匹配数字,请使用\d+代替\S+。因为他要求的是“金额”,这将允许在:-是的,我看到了,但不是在发布答案之前。更正了;)为这个愚蠢的错误感到抱歉。