代码之家  ›  专栏  ›  技术社区  ›  Trombone0904

获取字符串的特定部分

  •  0
  • Trombone0904  · 技术社区  · 3 年前

    我得到了这个字符串,其中的结构总是相同的,只是内容不同:

    Herr Max Mustermann Musterstraße 3 12345 City Customer 123456 Date 03.01.2023
    

    现在我想在“客户”后面取号码 我怎么能意识到呢? 我的想法:

    1. 将字符串分解为“”
    2. 循环每个元素并检查值是否为==客户
    3. 如果是。获取数组的下一个元素->这应该是号码

    有更好的方法吗?

    1 回复  |  直到 3 年前
        1
  •  0
  •   mickmackusa Tom Green    3 年前

    匹配完整字符串,捕获后面的数字子字符串 Customer ,然后匹配字符串的其余部分;然后用数字子字符串替换整个字符串。完成。

    代码:( Demo )

    $string = 'Herr Max Mustermann Musterstraße 3 12345 City Customer 123456 Date 03.01.2023';
    
    echo preg_replace('/.* Customer (\d+).*/', '$1', $string);
    

    你可以使用 preg_match() 喜欢 this this ,但这将涉及创建一个数组,然后从数组中访问字符串(这意味着这不是直接的编码实践)。

    如果你 事实上 如果想要解析多个值,那么使用 preg_match() 以捕获所需的子字符串。

    推荐文章