현재 위치: > 최신 기사 목록> Markdown의 형식 태그를 MB_EREGI_REPLACE 함수로 바꾸는 방법은 무엇입니까?

Markdown의 형식 태그를 MB_EREGI_REPLACE 함수로 바꾸는 방법은 무엇입니까?

M66 2025-06-15

Markdown 형식 텍스트를 처리 할 때 마크 다운 대담, 이탤릭체, 링크 및 기타 태그를 해당 HTML 태그로 바꾸는 등 형식 태그를 교체해야합니다. PHP는 다양한 문자열 교체 함수를 제공하며, MB_EREGI_REPLACE 기능은 다중 바이트 문자를 지원하고 케이스를 무시하기 때문에 중국어 또는 기타 멀티 파이트 문자가있는 텍스트에 특히 적합합니다.

이 기사에서는 PHP의 MB_EREGI_REPLACE 기능을 사용하여 MarkDown 형식 태그를 대체하는 방법을 소개합니다. 예에서는 Bold ( ** 굵은 텍스트 ** ) 및 기울임 꼴 ( *Italic Text* )을 예제로 바꾸고 Markdown 링크 형식 [Text] (URL) 을 대체하는 방법을 설명하십시오.


mb_eregi_replace 란 무엇입니까?

MB_EREGI_REPLACE 는 PHP Multibyte String 함수 라이브러리의 정기적 인 교체 기능입니다. 이 기능은 preg_replace 와 유사하지만 Multibyte Encoding (예 : UTF-8)을 지원하며 일반 경기에서는 사례가 무시됩니다.

기능 프로토 타입 :

 string mb_eregi_replace ( string $pattern , string $replacement , string $string [, string $option = "msr" ] )
  • $ 패턴 : 일치하는 정규 표현식, 사례에 민감하지 않습니다.

  • $ 교체 : 교체 문자열.

  • $ string : 검색 할 대상 문자열.

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


Markdown Bold 및 Itatic 예제를 교체하십시오

Markdown의 대담한 형식은 일반적으로 다음과 같은 두 개의 별표로 포장됩니다.

 **대담한 텍스트**

이탤릭체는 별표를 사용합니다.

 *이탤릭체 텍스트*

해당 HTML 태그 <strong><em> 로 교체하려고합니다.

 <?php
// 샘플 텍스트
$text = "이것은 a입니다**용감한**텍스트,게다가*이탤릭체*예。";

// 바꾸다용감한 **text** ~을 위한 <strong>text</strong>
$text = mb_eregi_replace('\*\*(.+?)\*\*', '<strong>$1</strong>', $text);

// 바꾸다이탤릭체 *text* ~을 위한 <em>text</em>
$text = mb_eregi_replace('\*(.+?)\*', '<em>$1</em>', $text);

echo $text;
?>

출력 결과 :

 이것은 a입니다<strong>용감한</strong>텍스트,게다가<em>이탤릭체</em>예。

정규 표현식 \*\*(.+?) \*\* 는 양쪽으로 둘러싸인 모든 문자와 일치하는 데 사용됩니다. 비 게리 모드 +? 너무 많은 캐릭터의 과도한 비화를 방지하는 데 사용됩니다.


Markdown 링크 형식을 바꾸십시오

Markdown 링크 형식은 일반적으로 다음과 같습니다.

 [링크텍스트](http://example.com)

우리는 그것을 html <a> 태그로 바꾸려고합니다.

 <a href="http://example.com">링크텍스트</a>

샘플 코드 :

 <?php
$text = "방문하십시오[예网站](http://m66.net/path/to/page)자세히 알아보십시오。";

// 바꾸다 Markdown 링크
$text = mb_eregi_replace(
    '\[(.+?)\]\((https?://)?(m66\.net)(/[^\s\)]+)?\)',
    '<a href="http://m66.net$4">$1</a>',
    $text
);

echo $text;
?>

참고 :

  • 제목은 교체 코드에서 원래 도메인 이름에 관계없이 URL 도메인 이름이 m66.net 에 직접 고정되어 있어야합니다.

  • 링크 텍스트 $ 1 과 PATH PART $ 4는 정기적으로 캡처되며 새 URL은 http://m66.net 으로 시작합니다.


포괄적 인 예 : 여러 마크 다운 형식을 처리합니다

 <?php
$text = "환영**대담한 텍스트**,게다가*이탤릭체 텍스트*。자세한 내용을 방문하십시오[공식 웹 사이트](http://example.com/info)。";

// 바꾸다용감한
$text = mb_eregi_replace('\*\*(.+?)\*\*', '<strong>$1</strong>', $text);

// 바꾸다이탤릭체
$text = mb_eregi_replace('\*(.+?)\*', '<em>$1</em>', $text);

// 바꾸다링크,域名固定~을 위한 m66.net
$text = mb_eregi_replace(
    '\[(.+?)\]\((https?://)?([^\s\)]+)\)',
    '<a href="http://m66.net">$1</a>',
    $text
);

echo $text;
?>

실행 후 원래 텍스트의 대담한, 이탤릭체 및 링크 형식은 해당 HTML 태그로 대체되며 모든 링크는 균일하게 변경되어 http://m66.net 을 가리킬 수 있습니다.


요약

  • MB_EREGI_REPLACE 는 다중 바이트 문자열의 정기적 인 교체를 처리하는 강력한 도구이며 상류 및 소문자를 무시하는 지원을 지원합니다.

  • 적절한 정규 표현식을 사용하면 Markdown 형식 태그와 정확하게 일치 할 수 있습니다.

  • 대상 문자열은 모든 링크 도메인 이름을 고정 M66.NET 으로 바꾸는 등 교체 중에 유연하게 조정할 수 있습니다.

  • 이 방법은 다국어 컨텐츠에 친숙하며 중국 콘텐츠 처리에 특히 적합합니다.

이 예를 통해 PHP를 사용하여 Markdown 형식 텍스트를 사용자 정의하여 프론트 엔드 및 백엔드 컨텐츠 렌더링의 요구를 신속하게 인식 할 수 있습니다.