php正则表达式获取字符串模式

乌恩·乌丁

我想从原始文本中获取所有获利价值。但是书写方式不一样。

我得到了我想要的所有值,除了20/30/50。对于那个值我只能得到20。

我希望整个单词都为20/30/50

$s = 'SS 1.0140 SL 1.0670 TP1 1.0870 TP 1 1.0870 TP 2 1.0870 Takeprofit1 1.0870 Take profit 1 1.0870 TP 1.0870 TP 20/30/50 TP-----1.0870 TP=1.0870 TP1=1.0870 TP Open';

$p = '#\b(TAKE ?PROFIT ?(?:[1-3]|\|TP|at)|TP ?(?:[1-3](?!\.\d))?)\b(.*?)\b(Open|(\d+(?:\.\d+)?))\b#i';

preg_match_all($p , $s , $m);

的结果$m[3]

Array
(

    [3] => Array
        (

            [0] => 1.0870
            [1] => 1.0870
            [2] => 1.0870
            [3] => 1.0870
            [4] => 1.0870
            [5] => 1.0870
            [6] => 20
            [7] => 1.0870
            [8] => 1.0870
            [9] => 1.0870
            [10] => Open
        )
)
米克马克萨

添加(?:/\d+)*到您的第三个捕获组。

https://regex101.com/r/hsQ0xD/1/

这使得重复的非捕获组(子字符串)“斜杠然后是一个或多个数字”是可选的。

代码:(演示

$s = 'SS 1.0140 SL 1.0670 TP1 1.0870 TP 1 1.0870 TP 2 1.0870 Takeprofit1 1.0870 Take profit 1 1.0870 TP 1.0870 TP 20/30/50 TP-----1.0870 TP=1.0870 TP1=1.0870 TP Open';

$p = '#\b(TAKE ?PROFIT ?(?:[1-3]|\|TP|at)|TP ?(?:[1-3](?!\.\d))?)\b(.*?)\b(Open|(\d+(?:\.\d+)?(?:/\d+)*))\b#i';

preg_match_all($p , $s , $m);

var_export($m[3]);

输出:

array (
  0 => '1.0870',
  1 => '1.0870',
  2 => '1.0870',
  3 => '1.0870',
  4 => '1.0870',
  5 => '1.0870',
  6 => '20/30/50',
  7 => '1.0870',
  8 => '1.0870',
  9 => '1.0870',
  10 => 'Open',
)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

正则表达式模式在花括号之间获取字符串

来自分类Dev

正则表达式匹配并通过模式JAVA获取字符串

来自分类Dev

如何编写正则表达式模式以在 c# 中获取字符串的子字符串

来自分类Dev

PHP正则表达式获取字符串的中间

来自分类Dev

从正则表达式获取字符串中的字符串

来自分类Dev

正则表达式从字符串中获取字符串

来自分类Dev

PHP /正则表达式:从字符串中提取字符串

来自分类Dev

使用带有Kotlin的正则表达式获取字符串中模式的索引

来自分类Dev

从仅与正则表达式模式匹配的字符串中提取字符

来自分类Dev

正则表达式:获取字符或字符与行尾之间的字符串

来自分类Dev

正则表达式提取字符串

来自分类Dev

正则表达式提取字符串

来自分类Dev

正则表达式提取字符串

来自分类Dev

提取字符串正则表达式

来自分类Dev

正则表达式–在字符后获取字符串

来自分类Dev

正则表达式获取字符串中的十进制值

来自分类Dev

正则表达式在JavaScript中获取字符串的多个段

来自分类Dev

JS-使用正则表达式获取字符串替换的原始值

来自分类Dev

正则表达式在@符号后获取字符串

来自分类Dev

使用bash和正则表达式获取字符串中的数字

来自分类Dev

正则表达式获取字符串和下划线之间的数值

来自分类Dev

使用正则表达式和JavaScript获取字符串中的完全匹配

来自分类Dev

在正则表达式的描述内容中未获取字符串

来自分类Dev

从正则表达式()中获取字符串的行为不符合预期

来自分类Dev

用于获取字符串部分的正则表达式

来自分类Dev

正则表达式获取字符串,直到遇到逗号为止

来自分类Dev

正则表达式在冒号之前和之后获取字符串

来自分类Dev

JS-使用正则表达式获取字符串替换的原始值

来自分类Dev

用正则表达式获取字符串

Related 相关文章

  1. 1

    正则表达式模式在花括号之间获取字符串

  2. 2

    正则表达式匹配并通过模式JAVA获取字符串

  3. 3

    如何编写正则表达式模式以在 c# 中获取字符串的子字符串

  4. 4

    PHP正则表达式获取字符串的中间

  5. 5

    从正则表达式获取字符串中的字符串

  6. 6

    正则表达式从字符串中获取字符串

  7. 7

    PHP /正则表达式:从字符串中提取字符串

  8. 8

    使用带有Kotlin的正则表达式获取字符串中模式的索引

  9. 9

    从仅与正则表达式模式匹配的字符串中提取字符

  10. 10

    正则表达式:获取字符或字符与行尾之间的字符串

  11. 11

    正则表达式提取字符串

  12. 12

    正则表达式提取字符串

  13. 13

    正则表达式提取字符串

  14. 14

    提取字符串正则表达式

  15. 15

    正则表达式–在字符后获取字符串

  16. 16

    正则表达式获取字符串中的十进制值

  17. 17

    正则表达式在JavaScript中获取字符串的多个段

  18. 18

    JS-使用正则表达式获取字符串替换的原始值

  19. 19

    正则表达式在@符号后获取字符串

  20. 20

    使用bash和正则表达式获取字符串中的数字

  21. 21

    正则表达式获取字符串和下划线之间的数值

  22. 22

    使用正则表达式和JavaScript获取字符串中的完全匹配

  23. 23

    在正则表达式的描述内容中未获取字符串

  24. 24

    从正则表达式()中获取字符串的行为不符合预期

  25. 25

    用于获取字符串部分的正则表达式

  26. 26

    正则表达式获取字符串,直到遇到逗号为止

  27. 27

    正则表达式在冒号之前和之后获取字符串

  28. 28

    JS-使用正则表达式获取字符串替换的原始值

  29. 29

    用正则表达式获取字符串

热门标签

归档