リンクをクリップボードにコピー
コピー完了
ちょっと不可解なことがありましたのでお尋ねします。
1桁数字にマッチさせようとして、以下のように書きました。
(?<![,-9ー])[0-9](?![,-9ー])
ところがこれではマッチせず、
(?<![,-9ー])\d(?![,-9ー])
だとマッチするのです。
理由がどうしてもわからないので、どなたかお分かりになる方いらっしゃるでしょうか。
MacOS10.15.7
CC2020
で作業しております。
ごく単純なところから確認しますが、
マッチ対象の数字が半角数字以外である可能性は?
極端な例でいえば、全角数字+プロポーショナル字形であるとか…
マッチした文字コードは情報パネル上で0x30〜0x39として見えてるでしょうか?
リンクをクリップボードにコピー
コピー完了
ごく単純なところから確認しますが、
マッチ対象の数字が半角数字以外である可能性は?
極端な例でいえば、全角数字+プロポーショナル字形であるとか…
マッチした文字コードは情報パネル上で0x30〜0x39として見えてるでしょうか?
リンクをクリップボードにコピー
コピー完了
確認しました!
バッチリです!
テキスト中の数字が全部半角だと信じておりましたが、[0-9]でマッチしなかったのは全角数字でした。
謎が解けました。ありがとうございます。
リンクをクリップボードにコピー
コピー完了
よかったです! 書体や文字組みによっては見た目で区別つきにくいことも多いですね。
自分でもたまにやらかしますw
リンクをクリップボードにコピー
コピー完了
補足しておきますと、数字の前後を[,-9ー]以外の文字が来た時でマッチさせる(否定先読みと否定後読み)と考えたのですが、肝心の数字部分を[0-9]にしたときにマッチせず、\dにしたときにマッチするのです。
何か超基本的なところを間違っているのでは?と思い投稿した次第です。
新しいアドビコミュニティで、さらに多くのインスピレーション、イベント、リソースを見つけましょう
今すぐ検索