[\d-.]+動作しますが、[\d-.]*動作しません。変更したのは最後の+toだけです。*
<b>12345</b>
<b>12345-6789</b>
<i>1234.5678</i>
<tag>1234-2342346456</tag>
ここでテストしましたhttp://regexr.com?30ngn
は*0 以上、+は 1 以上を意味します。*のみで動作し.ますか?
[\d-.]+動作しますが、[\d-.]*動作しません。変更したのは最後の+toだけです。*
<b>12345</b>
<b>12345-6789</b>
<i>1234.5678</i>
<tag>1234-2342346456</tag>
ここでテストしましたhttp://regexr.com?30ngn
は*0 以上、+は 1 以上を意味します。*のみで動作し.ますか?
演算子は正常に動作します。正規表現*がおかしな動作をしているだけです。または-、正規表現の文字クラスでの文字の危険な使用が原因です。-文字クラスの文字と一致させる場合は、先頭に配置します。そうしないと、正規表現エンジンが範囲(など[A-Z])を一致させたいと考える場合があります。
固定正規表現は、 regexpal[-\d.]*で問題なく機能します。