> 백엔드 개발 > PHP 튜토리얼 > PHP의 쉼표로 구분된 문자열에서 키-값 쌍을 효율적으로 구문 분석하는 방법은 무엇입니까?

PHP의 쉼표로 구분된 문자열에서 키-값 쌍을 효율적으로 구문 분석하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-12-14 04:12:15
원래의
322명이 탐색했습니다.

How to Efficiently Parse Key-Value Pairs from a Comma-Separated String in PHP?

쉼표로 구분된 문자열에서 키-값 표현식 구문 분석

쉼표로 구분된 키-값 표현식 문자열을 연관 배열로 변환하는 것은 다음과 같습니다. PHP의 일반적인 작업입니다. 간단한 접근 방식에는 문자열을 배열로 분해하고, 각 요소를 다듬은 다음, 또 다른 폭발을 사용하여 각 요소를 키와 값으로 분리하는 작업이 포함될 수 있습니다. 그러나 정규식을 사용하여 이 작업을 수행하는 더 효율적인 방법이 있습니다.

"key=value, key2=value2"와 같은 문자열이 있는 경우 정규식으로 구문 분석할 수 있는 방법은 다음과 같습니다.

$str = "key=value, key2=value2";
preg_match_all("/([^,= ]+)=([^,= ]+)/", $str, $r); 
$result = array_combine($r[1], $r[2]);
var_dump($result);
로그인 후 복사

정규식 패턴 /([^,= ] )=([^,= ] )/는 공백, 쉼표가 아닌 문자열과 일치합니다. 같지 않은 문자 뒤에 등호(=)가 오고 그 뒤에 또 다른 비공백, 비쉼표 및 비등호 문자가 옵니다. 그런 다음 preg_match_all 함수를 사용하여 문자열의 패턴을 일치시키고 일치하는 그룹을 배열($r)에 캡처합니다. 마지막으로 array_combine 함수는 캡처된 첫 번째 그룹과 두 번째 그룹($r[1] 및 $r[2])을 연관 배열의 키와 값으로 병합하는 데 사용됩니다.

이 접근 방식은 키를 효율적으로 구문 분석합니다. 여러 배열 변환이나 루프가 필요 없이 단일 정규식 일치의 값 표현식입니다. 결과는 각 키가 해당 값에 매핑되는 깔끔하게 구성된 연관 배열입니다.

위 내용은 PHP의 쉼표로 구분된 문자열에서 키-값 쌍을 효율적으로 구문 분석하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿