Skip to content

正規表示法

lookahead 使用上感覺像postfix lookbehind 使用上感覺像prefix

add-commas-to-number

https://www.delftstack.com/howto/javascript/javascript-add-commas-to-number/ /\B(?=(\d{3})+(?!\d))/g

\B(?=(\d{3})+(?!\d)) \B(?=(\d{3}){1}(?!\d)) 1(?=(\d{3})+(?!\d)) 3(?=(\d{3})+(?!\d)) 3(?=((\d{3}){2})(?!\d)) (\d{3})+(?!\d)

Test String: 4156416541564156199 dsfdfsd5dsf dsfkllkjs sdjfkljlkj 213231221 9213231223

:::info (\d{3})+(?!\d) => 位數為3的倍數的數字, ex. 221, 231221, 564156199 (\d{3}){1}(?!\d) => 只能3位數 (\d{3}){2}(?!\d) => 只能6位數

3(?=((\d{3}){2})(?!\d)) => 要match後面只能接6位數的數字3

:::

參考