손

여기서 막혔어요 도와주세요~

문자열 치환함수인데요....
 
 
아래의 소스대로 하면,
 
mildly가 입력되면 이상il복부 가 출력됩니다. 순차적으로 일치하는 단어만을 출력하게 되는데요
 
이를 정확하게 일치하는 단어만 출력되게 하는 방법이 있을까요? mildly를 입력하면 "경미하게" 출력되게끔요
 
 
 
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

function bad_Word($str)
 {     
$str=str_replace("m","이상",$str);
$str=str_replace("mil","경",$str);
$str=str_replace("dly","복부",$str);
$str=str_replace("ased","외전",$str);
$str=str_replace("localized","후방 관절",$str);
$str=str_replace("increased","증가된",$str);
$str=str_replace("mildly","경미하게",$str);

   
 return $str;
 }   

?>
 
 
 
 
 
 
 
아래는 내용출력부분 입니다
 
 
<?
                   //<!-- 단어변환-->
     if ($member[mb_level] >= "12"){echo "<span class='ct lh'>".$view[content]."</span>";}
      else{
      
      
      $content = bad_Word($view[content]);
      echo "<span id=\"writeContents\">".$content."</span>";
       }
        ?>
|

댓글 8개

$str=str_replace("mildly","경미하게",$str);
$str=str_replace("increased","증가된",$str);
$str=str_replace("localized","후방 관절",$str);
$str=str_replace("ased","외전",$str);
$str=str_replace("dly","복부",$str);
$str=str_replace("mil","경",$str);
$str=str_replace("m","이상",$str);


이렇게 반대로 하면 되지 않을까요 ^^;
치환하는 단어가 2만개입니다 ㅜㅡ
정확히 일치하는 문자열만 출력하는 방법이 없을까요?
글자길이로 소팅후 치환순서를 정한후 str_replace 에 array 인자로 넣어주심댈듯
function Word($str) {
$a_res = array("m"=>"이상", "mil"=>"경", "dly"=>"복부", "ased"=>"외전", "localized"=>"후방 관절", "increased"=>"증가된", "mildly"=>"경미하게");

return $a_res[$str];
}
치환 문자열과, 치환대상 문자열을 배열로 만들어서 저장하면 됩니다.
stop word(아마 공백이 되겠죠.) 단위로 나눠서 변환을 하면 됩니다.
연속되어 있는 문자는 위에서 얘기한것쩌럼 긴쪽부터 변환해야 합니다.
이렇게 해도 안돼요 ㅠㅠ

function bad_Word($str)
{
$a_res = array('m' =>'이상','mil'=>'경','dly'=>'복부','ased'=>'외전','localized'=>'후방 관절','increased'=>'증가된','mildly'=>'경미하게');
$str = str_replace($a_res, $str);
return $str;
}
제가 잘못이해했는지 모르겠습니다만, 정규표현식으로 하면 쉽게되지 않을까요??
답변 감사합니다^^
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
12-03-19 조회 3,550
12-03-16 조회 4,084
12-03-14 조회 3,972
12-03-13 조회 3,578
12-03-13 조회 4,438
12-03-12 조회 5,520
12-03-12 조회 1만
12-03-08 조회 6,092
12-03-06 조회 1.1만
12-03-06 조회 3,786
12-03-06 조회 6,302
12-03-02 조회 5,089
12-02-29 조회 3,635
12-02-27 조회 4,150
12-02-22 조회 3,692
12-02-20 조회 3,668
12-02-20 조회 6,757
12-02-01 조회 3,280
12-01-30 조회 8,821
12-01-29 조회 3,301
12-01-24 조회 3,631
12-01-21 조회 3,284
12-01-10 조회 3,747
11-12-26 조회 3,657
11-12-23 조회 5,079
11-12-23 조회 4,731
11-12-23 조회 4,334
11-12-23 조회 8,038
11-12-22 조회 3,774
11-12-17 조회 3,826
11-12-12 조회 3,233
11-12-08 조회 7,756
11-12-08 조회 3,593
11-12-07 조회 3,844
11-12-06 조회 5,604
11-12-02 조회 3,558
11-12-01 조회 3,173
11-11-30 조회 6,967
11-11-26 조회 3,919
11-11-24 조회 4,679
11-11-22 조회 3,062
11-11-22 조회 6,676
11-11-18 조회 5,104
11-11-16 조회 3,483
11-11-14 조회 3,499
11-11-12 조회 3,984
11-11-08 조회 3,313
11-11-06 조회 1만
11-11-06 조회 3,896
11-11-03 조회 5,581
11-11-02 조회 5,850
11-11-01 조회 9,366
11-10-19 조회 2,870
11-10-17 조회 2,665
11-10-10 조회 2,633
11-10-07 조회 3,399
11-10-06 조회 3,990
11-10-06 조회 2,544
11-10-02 조회 3,298
11-09-08 조회 4,309
11-09-08 조회 2,685
11-09-07 조회 2,660
11-09-02 조회 2,754
11-09-01 조회 3,700
11-08-28 조회 3,587
11-08-23 조회 3,416
11-08-22 조회 2,834
11-08-22 조회 2,431
11-08-13 조회 2,480
11-08-05 조회 2,921
11-08-03 조회 4,130
11-07-03 조회 2,612
11-06-15 조회 3,258
11-06-15 조회 3,086
11-05-15 조회 2,897
11-05-11 조회 5,627
11-04-12 조회 3,040
11-01-27 조회 3,862
11-01-26 조회 2,657
11-01-26 조회 4,499
11-01-18 조회 2,712
10-11-23 조회 2,944
10-10-24 조회 4,754
10-09-15 조회 4,446
10-09-07 조회 3,430
10-08-27 조회 4,113
10-08-20 조회 6,996
10-07-30 조회 5,678
10-06-30 조회 2,936
10-06-11 조회 4,692
10-06-11 조회 3,382
10-05-15 조회 4,223
10-05-10 조회 2,914
10-03-19 조회 5,458
10-03-05 조회 5,218
10-02-17 조회 5,652
09-11-21 조회 6,966
09-11-09 조회 4,036
09-11-04 조회 6,765
09-10-26 조회 3,885