정규 표현식이 싫고 누군가가 regualar 표현식을 사용하여 preg_replace와 함께 사용할 수 있기를 바랍니다.preg_replace - 문자열에서 원하지 않는 문자를 제거하여 숫자 값을 반환합니다.
문자열에서 원치 않는 문자를 제거하여 preg_replace를 사용하여 숫자 값만 반환하려고합니다.
일부 텍스트가 £ 100
£ 100 텍스트
텍스트 100 텍스트
많은 감사
정규 표현식이 싫고 누군가가 regualar 표현식을 사용하여 preg_replace와 함께 사용할 수 있기를 바랍니다.preg_replace - 문자열에서 원하지 않는 문자를 제거하여 숫자 값을 반환합니다.
문자열에서 원치 않는 문자를 제거하여 preg_replace를 사용하여 숫자 값만 반환하려고합니다.
일부 텍스트가 £ 100
£ 100 텍스트
텍스트 100 텍스트
많은 감사
$NumericVal = preg_replace("/[^0-9]/","",$TextVariable);
^를 +
매우 효율적이고 탁월한 대답 –
호기심 때문에'\ D'를 사용하지 않는 이유는 무엇입니까? 웹에서의 많은 답변은 기본 제공되는 "숫자가 아닌" – nicorellius
@nicorellius가 아닌 숫자가 아닌 숫자를 사용합니다. 나는 이렇게 대답했을 때 이것을 정말 빨리 썼습니다. 사용법을 생각하지 않았고 이후로 생각하지 않았습니다. \ d를 사용하도록 편집하십시오. 그것은 다른 정규식 옵션에 대한 지식이 없어도 사람들에게 더 읽기 쉽습니다. –
을 다음과 같이
문자열 형식이 될 수있다 사용해보기 :
preg_replace("/\D+/", "", "SOME TEXT £100")
또한 첫 번째 번호를 얻기 위해 preg_match
를 사용할 수 있습니다
preg_match("/\d+/", "SOME TEXT £100", $matches);
$number = $matches[0];
(가) [] 불필요한 제거 다음
편집 제외하고는 아무것도 의미 내부
$l = preg_replace("/[^A-Z0-9a-z\w ]/u", '', $l);
작동 마녀 UTF-8, A-Z a-z 0-9 łwóc ... 등 허용
이렇게 모두 100을 산출합니까? '1abc00'는 어떻게됩니까? – BoltClock
더 나은 점은'£ 1.00'은 어떨까요? – Kobi