如何在字符串中找到第一个alpha [A-Za-z]的位置?

Rya*_*yan 3 php regex string substring

可能重复:
如何在字符串中找到正则表达式匹配的索引?
如何在字符串中获取正则表达式匹配的位置?

给定以下字符串,如何在每个字符串中找到第一个alpha的位置?

1) - Alpha

2) beta

3) . Gamma

4) 'delta'

最终我在子串之后,从第一个alpha字符开始.所以我想要将我的子串偏移得到Alpha.

我正在寻找的补偿(来自上面的例子)是:

1)2

2)0

3)2

4)1

我不关心任何特殊人物.只是第一个alpha,不区分大小写(A-Za-z).

Gla*_*vić 6

使用preg_match():

码:

foreach (array('- Alpha', 'beta', '. Gamma', "'delta'") as $value) {
    preg_match('~[a-z]~i', $value, $match, PREG_OFFSET_CAPTURE);
    print_r($match);
}
Run Code Online (Sandbox Code Playgroud)

输出:

Array
(
    [0] => Array
        (
            [0] => A
            [1] => 2
        )
)
Array
(
    [0] => Array
        (
            [0] => b
            [1] => 0
        )
)
Array
(
    [0] => Array
        (
            [0] => G
            [1] => 2
        )
)
Array
(
    [0] => Array
        (
            [0] => d
            [1] => 1
        )
)
Run Code Online (Sandbox Code Playgroud)