2013-01-16 1 views
-3

메시지를 보내기 전에 사용자에게 SMS를 보내야합니다. 지원되지 않는 문자를 메시지에서 제거하고 싶습니다. API 문서 행을 참조로 추가했습니다.SMS 지원되지 않는 문자를 제거하는 정규식

일반적으로 표준 ASCII 문자 집합의 하위 집합 만 SMS를 통해 사용자에게 배달되는 콘텐츠에 대해 지원됩니다. 지원되는 문자 목록은 A-Z, a-z, 0-9 및 다음과 같습니다.

@$_/.,"():;-=+*&%#!?<>' 더하기 "\n".

대부분의 특수 문자는 지원되지 않으므로 무선 운영자가 메시지를 거부하게됩니다. 특히, 문자를 강조하고, 다음은 지원되지 않습니다 :

[]~{}^|\

SMS를 통해 전달을위한 컨텐츠를 제작,에 대한 간단한 ASCII 문자를 사용하는 것도 중요하다 아포스트로피, 줄임표 및 큰 따옴표 :

< 대신 '을 사용하십시오. > 및대신 <“>

사용 "<”>

사용 ... 대신 의 : 그래서에 정규 표현식을 찾고

(주 즉, 별도의 세 대신 단일 줄임표 문자의 기간이다) 이 요구 사항을 만족시킨다.

+0

먼저 시도해 보셨습니까? – ThiS

+0

정규 표현식에 대한 지식이 없으므로 아직 시도하지 않았습니다. 전문가의 도움이 필요합니다. – chella

+0

당신은 아시다시피 물어보기 전에 먼저 조금 배우려고합니다. http://txt2re.com/ –

답변

3

당신은 유효한 것들과 일치하지 않는 모든 문자를 대체 할 수있는 :

[^[email protected]$_\/.,"():;\-=+&%#!?<>' \n] 

[] 수단을 : "없습니다": "의는"및 ^ 의미합니다. 그래서 전체 표현식은 말한다 :

그래서 당신이 쓰는 것 ... 아무것도 일치하지만 :

replace all [^[email protected]$_\/.,"():;\-=+&%#!?<>' \n] in the SMS by nothing 

추가 정보 (그리고 추가 질문 ;-))의 경우이 Howto 살펴 보시기 바랍니다.

+0

안녕하세요 가려워, 답변 주셔서 감사합니다. 유용합니다. :) – chella

관련 문제