현재 위치: > 최신 기사 목록> mb_eregi_replace를 사용하여 텍스트를 강조 표시하십시오 (<mark> 태그 포함)

mb_eregi_replace를 사용하여 텍스트를 강조 표시하십시오 (<mark> 태그 포함)

M66 2025-06-02

PHP에서 멀티 바이트 스트링을 처리 할 때는 사례에 민감한 교체 작업이 종종 필요합니다. MB_EREGI_REPLACE 는 사례에 민감하지 않은 정규식 교체를 구현하는 데 사용할 수있는 매우 실용적인 기능으로 중국어와 같은 다중 바이트 문자에 특히 적합합니다. 이 기사에서는 MB_EREGI_REPLACE 기능과 html <mark> 태그를 결합하여 텍스트의 키워드에 강조 표시 효과를 추가하는 방법을 소개합니다.


1. MB_EREGI_REPLACE 란 무엇입니까?

MB_EREGI_REPLACE 는 PHP의 멀티 바이트 스트링 함수 중 하나이며, 그 기능은 사례에 민감한 정기 교체를 수행하는 것입니다. 구문은 다음과 같습니다.

 mb_eregi_replace(string $pattern, string $replacement, string $string, ?string $option = null): string
  • $ 패턴 : 일치하는 정규 표현식 (Case Insensentitive)

  • $ 교체 : 교체 문자열

  • $ String : 검색중인 문자열

  • $ 옵션 : 일치 동작을 제어하기위한 선택적 매개 변수

다중 바이트 캐릭터를 지원하며 중국어, 일본어, 한국 및 기타 언어의 텍스트 처리에 적합합니다.


2. <mark> 태그로 키워드를 강조하는 원리

html5 <mark> 태그는 강조 해야하는 텍스트를 표시하는 데 특별히 사용됩니다. 브라우저는 노란색 배경을 사용하여 기본적으로 표시된 컨텐츠를 표시하므로 키워드 강조 표시에 매우 적합합니다.

예를 들어:

 이것은 a입니다 <mark>가장 밝은 부분</mark> 의 말。

"하이라이트"라는 단어는 노란색 배경으로 페이지에 표시됩니다.


3. MB_EREGI_REPLAPE를 결합한 코드의 예를 통해 키워드 강조 표시

다음은 mb_eregi_replace를 사용하여 지정된 키워드를 <mark> 태그로 래핑하여 강조 표시 효과를 달성하는 방법을 보여주는 샘플 코드입니다.

 <?php
// 샘플 텍스트
$text = "PHP 매우 인기있는 서버 측 스크립팅 언어입니다。PHP 여러 프로그래밍 패러다임을 지원합니다。";

// 需要가장 밝은 부분的关键词(다중 일 수 있습니다,사용|분리)
$keywords = "php|서버 측";

// 정규 표현 구축,使사용括号捕获关键词本身,사건을 무시하십시오
$pattern = "(" . $keywords . ")";

// 使사용 mb_eregi_replace 사례에 민감한 교체를 만드십시오,키워드를 추가하십시오 <mark> 상표
$highlightedText = mb_eregi_replace(
    $pattern,
    "<mark>\\1</mark>",
    $text
);

// 输出가장 밝은 부분后的文本
echo $highlightedText;
?>

실행 결과의 예 :

 <mark>PHP</mark> 매우 인기가 있습니다<mark>서버 측</mark>스크립팅 언어。<mark>PHP</mark> 여러 프로그래밍 패러다임을 지원합니다。

이러한 방식으로 페이지의 키워드 부분은 <mark> 태그로 래핑하여 강조 표시를 달성합니다.


4. 주목할만한 것들

  • MB_EREGI_REPLACE 의 일치는 대소 문자를 사용하지 않으며 퍼지 매칭 키워드가 필요한 시나리오에 적합합니다.

  • 정규 표현식의 키워드는 파이프 문자로 분리해야합니다 | "또는"의 관계를 나타냅니다.

  • 키워드에 특수 문자가 포함 된 경우 먼저 정기적 인 일치에 영향을 미치지 않도록 탈출해야합니다.

  • 멀티 바이트 스트링 처리가 올바른지 확인하려면 PHP 환경에서 MBString 확장이 활성화되어 있는지 확인하십시오.


5. 실제 URL 예제와 결합

다음 샘플 웹 주소가 있고 일부 키워드를 교체해야한다고 가정합니다.

 <?php
$text = "공식 웹 사이트를 방문하십시오 https://m66.net/ 자세히 알아보십시오。";

// 가장 밝은 부분 “m66.net”
$keywords = "m66\\.net";

$pattern = "(" . $keywords . ")";

$highlightedText = mb_eregi_replace(
    $pattern,
    "<mark>\\1</mark>",
    $text
);

echo $highlightedText;
?>

실행 후 "M66.net"이 강조 표시됩니다.


위의 소개를 통해 MB_EREGI_REPLACE<MARK> 태그를 쉽게 사용하여 텍스트의 키워드에 강조 표시 효과를 추가하여 콘텐츠의 가독성 및 사용자 경험을 향상시킬 수 있습니다.