>  기사  >  백엔드 개발  >  PHP 정규식을 통해 쉼표와 점을 제외한 숫자가 아닌 문자 제거

PHP 정규식을 통해 쉼표와 점을 제외한 숫자가 아닌 문자 제거

藏色散人
藏色散人원래의
2021-08-02 11:23:142928검색

从本文开始我会陆续给大家介绍PHP正则表达式的使用,当然面向的对象还是新手朋友们啦~希望能够通过一个个简单的小例子,让大家对正则表达式的使用越来越熟悉~

好的,咱们就从一个小问题开始~

给你一个字符串“$123,34.00A”,要求你用正则表达式删除除逗号和点以外的非数字字符,也就是说我们需要写一个PHP代码获取“123,34.00”,毕竟$A就属于除逗号和点以外的非数字字符。

非常简单啦~

上代码:

<?php
$str1 = "$12,334.00A";
echo preg_replace("/[^0-9,.]/", "", $str1)."\n";

没看错,这么简短的两行代码就可以完成我们的要求:

运行结果:

PHP 정규식을 통해 쉼표와 점을 제외한 숫자가 아닌 문자 제거

搞定!

这里就是介绍一个重要的函数preg_replace,该函数能执行一个正则表达式的搜索和替换。

其语法是“mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )”,表示搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换。

其中几个参数具体表示:

$pattern: 要搜索的模式,可以是字符串或一个字符串数组。

$replacement: 用于替换的字符串或字符串数组。

$subject: 要搜索替换的目标字符串或字符串数组。

$limit: 可选,对于每个模式用于每个 subject 字符串的最大可替换次数。 默认是-1(无限制)。

$count: 可选,为替换执行的次数。

那么关于preg_replace("/[^0-9,.]/", "", $str1),这个表达式的意思就是,匹配除了0-9间的数字以及逗号和点号以外的字符,并将这些字符替换为空即删除即可。

最后关于正则表达式,我在这里给大家推荐一个视频教程《正则表达式极速入门》,包你快速入门。

위 내용은 PHP 정규식을 통해 쉼표와 점을 제외한 숫자가 아닌 문자 제거의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.