2014-05-20 9 views
1

숫자와 문자 사이에 공백을 넣을 수있는 정규 표현식을 어떻게 쓰는지 궁금합니다. 내가 예상대로 정규 표현식으로 숫자와 문자 사이에 공백 넣기

var str = "... 15a...".replace(/(\d+)(\D+)/g,'$1 $2') 

위에서 작동하지 않는, 예를 들어, 나는 다음과 같은 제약

"... 15a ..." => "... 15 a ..." 
"... 15 a ..." => "... 15 a ..." 
"... 15% ..." => "... 15% ..." 

내가 어떤 도움을 주셔서 감사 할 필요가있다.

답변

0
var str = "... 15a...".replace(/(\d+)([a-z]+)/g,'$1 $2') 
0
"... 15a...".replace(/(\d+)([^%\d\s]+?)/g,'$1 $2') 

"... (15) ..."

"... (15) ...". 대체 (/ (\ D +) ([^ % \ D \는 S] +?)/g, '$ 1 $ 2')

"... (15) ..."

"... 15 % ...". (/ 교체 (\ d +) ([^ % \ d \ s] +?)/g, '$ 1 $ 2')

"... 15 % ..."

0

글쎄, 당신은 숫자가 아닌, 비 퍼센트 문자 뒤에 자리를 찾기 위해 노력하고 있습니다. 이렇게 :

replace(/(\d)([^\d\s%])/g,'$1 $2') 

트릭을해야합니다.

관련 문제