3 대체 방법: 1. substr_replace()를 사용하여 문자열의 시작 부분부터 시작하는 모든 문자를 대체합니다. 구문은 "substr_replace(원래 문자열, 대체 값 지정, 0)"입니다. 2. 모든 문자를 바꾸려면 str_replace()를 사용하세요. 구문은 "str_replace(원래 문자열, 지정된 대체 값, 원래 문자열)"입니다. 3. 모든 문자를 바꾸려면 str_ireplace()를 사용하세요. 구문은 "str_ireplace(원래 문자열, 지정된 대체 값, 원래 문자열)"입니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 8.1, DELL G3 컴퓨터
방법 1: substr_replace() 함수를 사용
substr_replace() 함수를 사용하여 다른 문자열과 문자열.
substr_replace(string,replacement,start,length)
substr_replace() 대체를 사용하여 문자열 사본에서 시작 및 선택적 길이 매개변수로 규정된 하위 문자열을 대체합니다.
start가 양수이면 문자열의 시작 위치부터 교체가 시작됩니다. start가 음수이면 문자열의 마지막 시작 위치부터 교체가 시작됩니다.
길이 매개변수가 설정되고 양수이면 문자열에서 대체된 하위 문자열의 길이를 나타냅니다. 음수로 설정되면 대체될 부분 문자열의 끝에서부터 대체될 문자열의 끝 부분부터의 문자 수를 나타낸다. 이 매개변수가 제공되지 않으면 기본값은 strlen(string)(문자열 길이)입니다. 물론 길이가 0이면 이 함수의 기능은 문자열의 시작 위치에 대체를 삽입하는 것입니다.
매개변수 | description |
---|---|
string | 필수입니다. 확인할 문자열을 지정합니다. |
교체 | 필수입니다. 삽입할 문자열을 지정합니다. |
start | 필수입니다. 문자열에서 대체를 시작할 위치를 지정합니다.
|
length | 선택사항. 대체할 문자 수를 지정합니다. 기본값은 문자열 길이와 동일합니다.
|
예: 모두 교체
함수의 세 번째 매개변수만 0으로 설정하면 되고 세 번째 매개변수는 원래 문자열 길이로 설정하거나 생략하여 모든 문자를 대체합니다
<?php header('content-type:text/html;charset=utf-8'); $str = 'hello world!'; echo "原字符串:".$str."<br><br>"; $replace = 'ABCDEFGHIJKL'; echo "替换全部字符字符:".substr_replace($str, $replace,0)."<br>"; ?>
방법 2/방법 3: str_ireplace() 및 str_replace() 함수
str_ireplace() 및 str_replace는 모두 새 문자열을 사용하여 원래 문자열에서 지정된 하위 문자열을 대체합니다. 대체할 하위 문자열이 원래 문자열인 경우 하위 문자열을 대체할 수 있습니다. 모든 문자.
str_ireplace()와 str_replace의 구문은 비슷합니다. 차이점은 str_replace는 대소문자를 구분하지만 str_ireplace()는 대소문자를 구분하지 않는다는 것입니다
str_replace(find,replace,string,count) str_ireplace(find,replace,string,count)
Parameters | Description |
---|---|
find | 필수의. 찾을 값을 지정합니다. |
replace | 필수입니다. find의 값을 대체할 값을 지정합니다. |
string | 필수입니다. 검색할 문자열을 지정합니다. |
count | 선택 사항입니다. 대체 횟수를 계산하는 변수입니다. |
示例:替换字符串中的所有字符
只需要将第一个参数设置为原字符串值即可。
<?php header('content-type:text/html;charset=utf-8'); $str = 'hello world!'; echo "原字符串:".$str."<br><br>"; $replace = 'ABCDEFGHIJKL'; echo "替换全部字符字符:".str_replace($str, $replace, $str)."<br>"; echo "替换全部字符字符:".str_ireplace($str, $replace, $str)."<br>"; ?>
扩展知识:替换字符串还可利用正则替换函数preg_replace() 和preg_filter()
preg_replace() 和preg_filter()函数都可以执行正则表达式的搜索和替换,不同的是 preg_filter() 函数只返回匹配成功的结果,而 preg_replace() 返回所有结果,不管是否匹配成功。
preg_replace() 和preg_filter()函数的语法类似:
preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count]]) preg_filter($pattern, $replacement, $subject [, $limit = -1 [, &$count]])
搜索 $subject 中匹配 $pattern 的部分, 以 $replacement 进行替换。
参数说明如下:
$pattern:要搜索的模式,可以使一个字符串或字符串数组;
$replacement:用于替换的字符串或字符串数组。如果这个参数是一个字符串,并且 $pattern 是一个数组,那么所有的模式都使用这个字符串进行替换。如果 $pattern 和 $replacement 都是数组,每个 $pattern 使用 $replacement 中对应的元素进行替换。如果 $replacement 中的元素比 $pattern 中的少,多出来的 $pattern 使用空字符串进行替换。
$subject:要进行搜索和替换的字符串或字符串数组,如果 $subject 是一个数组,搜索和替换回在 $subject 的每一个元素上进行, 并且返回值也会是一个数组。
$limit:可选参数,每个模式在每个 $subject 上进行替换的最大次数。默认是 -1(无限)。
$count:可选参数,如果指定,将会被填充为完成的替换次数。
示例:
preg_filter()和preg_replace()利用正则来替换字符串
<?php header('content-type:text/html;charset=utf-8'); $subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4'); $pattern = array('/\d/', '/[a-z]/', '/[1a]/'); $replace = array('A:$0', 'B:$0', 'C:$0'); echo "preg_filter 返回值:\n"; var_dump(preg_filter($pattern, $replace, $subject)); echo "preg_replace 返回值:\n"; var_dump(preg_replace($pattern, $replace, $subject)); ?>
推荐学习:《PHP视频教程》
위 내용은 PHP에서 문자열의 모든 문자를 바꾸는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!