No sweet without sweat

[웹앱 맨땅에 헤딩일기] - Invalid regular expression: invalid group specifier name 본문

웹앱공부(JSP,JAVA,Javascript,Jquery)

[웹앱 맨땅에 헤딩일기] - Invalid regular expression: invalid group specifier name

Remi 2023. 7. 28. 17:03
728x90
반응형

언제든 코드에 대한 반박은 환영합니다... 알려주세요 더 좋은 방법을!!!

 

SyntaxError: Invalid regular expression: invalid group specifier name

 

 

기존에 제가 사용했떤 Javscript코드입니다.

var formattedNumber = number.replaceAll("(?<=\\d)(?=(\\d{3})+$)", ",");

 

물론 웹에서도 오류가 안생겼고, Android에서도 문제가 안 생겼습니다...

(개발자모드에도 안 나오고, Chrome::insepect 에서도 나오지 않았습니다..)

 

이놈의 IOS..... 뭔가 다 안 돼....

 

원인은 다음과 같습니다.

Safari/iOS 에서는 lookbehind( x(?<=y) x(?<!y) ) 문법 지원하지 않고 있어요..

 

수정후 코드입니다.

function formatNumber(number) {
  const FormatNum = number.toString().split('.');
  FormatNum[0] = FormatNum[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',');
  return FormatNum.join('.');
}

 

다들 IOS, Android 둘다 호환되는지 체크하자구요~~

728x90
반응형
Comments