Php 正则表达式来查找模式

Php 正则表达式来查找模式,php,regex,Php,Regex,希望正则表达式在php中执行以下操作: 确定给定字符串是否在模式string1_string2_编号中,例如ph_val_34563、ph_val_296987等 如果为true,则提取数字部分 假设字符串的有效字符是字母,[A-Za-z]+表示需要一组一个或多个字母。这些字符类后面的表示必须跟随 (\d+)表示对前面表达式后面的一组或多个数字进行分组和捕获 ^说:“以” $说:“以结束” 你应该看一看关于的教程。那么就写吧。你的问题是什么?@Guilherme什么都没试过。Regex新手。考虑

希望正则表达式在php中执行以下操作:

  • 确定给定字符串是否在模式string1_string2_编号中,例如ph_val_34563、ph_val_296987等
  • 如果为true,则提取数字部分
  • 假设字符串的有效字符是字母,
    [A-Za-z]+
    表示需要一组一个或多个字母。这些字符类后面的
    表示必须跟随

    (\d+)
    表示对前面表达式后面的一组或多个数字进行分组和捕获

    ^
    说:“以”
    $
    说:“以结束”


    你应该看一看关于的教程。

    那么就写吧。你的问题是什么?@Guilherme什么都没试过。Regex新手。考虑使用基本的php函数来实现它。@Manju好吧,那么您应该阅读更多关于正则表达式如何工作的内容,并尝试编写一些代码来解决您的问题。如果你努力写它,却找不到它不起作用的原因,我们当然可以帮助你这里没有人会免费为你写代码。似乎。。。询问代码的问题必须证明对正在解决的问题的最低理解。包括尝试的解决方案、它们不起作用的原因以及预期结果。您只需使用
    $pattern='/ph_val[1-9]*/';preg_match_all($pattern,$ur_string,$matches)
    
    regex = "^[A-Za-z]+_[A-Za-z]+_(\d+)$"