-1

次の文字列があります。

73746174652C313A312C310D
                     |
                      - extract the value at this position

正規表現を使用して値 1 (文字列の末尾にある 1) を抽出したいと思います。

したがって、基本的には charAt(index) として機能する正規表現です。

正規表現のみをサポートするサードパーティのアプリケーションには、このソリューションが必要です。アプリケーションはキャプチャ グループにアクセスできず、否定的な後読みをサポートしていないことに注意してください。

4

4 に答える 4

4

C# の場合:

(?<=^.{21})(.)

JSで:

/.(?=.{2}$)/
于 2013-08-05T11:30:29.483 に答える
0

どのように一致させたいかによって異なります (開始からの x 距離または終了からの x 距離)

/(.).{2}$/最後から 3 番目 (キャプチャ グループ 1)

/^.{21}(.)/22キャラ目(攻略組1)

//PHP
$str = '73746174652C313A312C310D';

$char = preg_replace('/(.).{2}$/','$1',$str); //3rd from last

preg_match('/(.).{2}$/',$str,$chars); //3rd from last
$char = $chars[1];

preg_match('/^.{21}(.)/',$str,$chars); //22nd character
$char = $chars[1];


//JS
var str = '73746174652C313A312C310D';
var ch = str.replace(/(.).{2}$/,'$1'); //3rd from last
var ch = str.match(/(.).{2}$/)[1]; //3rd from last
var ch = str.match(/^.{21}(.)/)[1]; //22nd character

First match:ツールのビットの結果を使用する必要がある場合は、 2 回実行します。

73746174652C313A312C310D- ^.{21}.= 73746174652C313A312C31

73746174652C313A312C31- .$= 1

于 2013-08-05T10:58:52.930 に答える