sourcecode

PHP 문자열 끝에 있는 모든 특정 문자를 제거하려면 어떻게 해야 합니까?

copyscript 2022. 9. 22. 00:11
반응형

PHP 문자열 끝에 있는 모든 특정 문자를 제거하려면 어떻게 해야 합니까?

마침표인 경우에만 마지막 문자를 제거하려면 어떻게 해야 합니까?

$string = "something here.";
$output = 'something here';
$output = rtrim($string, '.');

(참조: rtrim (PHP.net )

rtrim을 사용하면 마지막 문자뿐만 아니라 마지막에 모든 "."가 바뀝니다.

$string = "something here..";
echo preg_replace("/\.$/","",$string);

마지막 문자가 마침표일 때에만 제거되고 다음 문자에 의존하지 않으려면preg_replace문자열을 char 배열로 취급하고 점일 경우 마지막 문자를 삭제할 수 있습니다.

if ($str[strlen($str)-1]==='.')
  $str=substr($str, 0, -1);

난 그 질문이 풀렸다는 걸 알아.하지만 아마도 이 대답이 누군가에게 도움이 될 것이다.

rtrim() - 문자열 끝에서 공백(또는 다른 문자)을 제거합니다.

ltrim() - 문자열의 선두에서 공백(또는 다른 문자)을 제거합니다.

trim() - 문자열의 처음과 끝에서 공백(또는 다른 문자)을 제거합니다.

문자열의 끝에서 특수문자를 삭제하거나 문자열 끝에 동적 특수문자가 포함되어 있는 경우 regex로 수행할 수 있습니다.

preg_replace - 정규 표현 검색 및 치환

$regex = "/\.$/";             //to replace the single dot at the end
$regex = "/\.+$/";            //to replace multiple dots at the end
$regex = "/[.*?!@#$&-_ ]+$/"; //to replace all special characters (.*?!@#$&-_) from the end

$result = preg_replace($regex, "", $string);

다음 예시는 다음과 같습니다.$regex = "/[.*?!@#$&-_ ]+$/";문자열에 적용됩니다.

$string = "Some text........"; // $resul -> "Some text";
$string = "Some text.????";    // $resul -> "Some text";
$string = "Some text!!!";      // $resul -> "Some text";
$string = "Some text..!???";   // $resul -> "Some text";

그것이 당신에게 도움이 되기를 바랍니다.

감사합니다:-)

나는 그 질문이 몇 살인지 알지만 내 대답이 누군가에게 도움이 될 수도 있다.

$string = "something here..........";

ltrim은 선행 닷을 제거합니다.예를 들어 다음과 같습니다.ltrim($string, ".")

rtrim rtrim($string, ".")뒷부분의 점을 제거합니다.

다듬다 trim($string, ".")후행점과 선행점을 제거합니다.

regex를 사용하여 이 작업을 수행할 수도 있습니다.

preg_replace would remove를 사용하여 끝에 있는 닷/점 제거 가능

$regex = "/\.$/"; //to replace single dot at the end
$regex = "/\.+$/"; //to replace multiple dots at the end
preg_replace($regex, "", $string);

그것이 당신에게 도움이 되기를 바랍니다.

마지막 문자는 여러 가지 방법으로 제거할 수 있습니다. 다음은 몇 가지 예입니다.

  • rtrim()
$output = rtrim($string, '.');
  • Regular Expression
preg_replace("/\.$/", "", $string);
  • substr()/mb_substr()
echo mb_substr($string, 0, -1);

echo substr(trim($string), 0, -1);
  • substr()와 함께trim()
echo substr(trim($string), 0, -1);

php의 rtrim 함수를 사용하면 마지막 위치에 있는 데이터를 트리밍할 수 있습니다.

예를 들어 다음과 같습니다.

$trim_variable= rtrim($any_string, '.');

가장 심플하고 빠른 방법!!

strpos기판의 조합을 사용하여 마지막 마침표 문자의 위치를 가져오고 다른 모든 문자를 그대로 유지합니다.

$string = "something here.";

$pos = strrpos($string,'.');
if($pos !== false){
  $output = substr($string,0,$pos);
} else {
  $output = $string;
}

var_dump($output);

// $output = 'something here';

chop() 함수는 문자열 오른쪽 끝에서 공백 또는 기타 정의된 문자를 삭제합니다.

$string = "something here.";

$string = chop($string,".");

echo $string;

산출량

여기 뭔가

예:

    $columns = array('col1'=> 'value1', 'col2' => '2', 'col3' => '3', 'col4' => 'value4');

    echo "Total no of elements: ".count($columns);
    echo "<br>";
    echo "----------------------------------------------<br />";

    $keys = "";
    $values = "";
    foreach($columns as $x=>$x_value)
    {
      echo "Key=" . $x . ", Value=" . $x_value;
      $keys = $keys."'".$x."',";
      $values = $values."'".$x_value."',";
      echo "<br>";
    }


    echo "----------------------Before------------------------<br />";

    echo $keys;
    echo "<br />";
    echo $values;
    echo "<br />";

    $keys   = rtrim($keys, ",");
    $values = rtrim($values, ",");
    echo "<br />";

    echo "-----------------------After-----------------------<br />";
    echo $keys;
    echo "<br />";
    echo $values;

?>

출력:

Total no of elements: 4
----------------------------------------------
Key=col1, Value=value1
Key=col2, Value=2
Key=col3, Value=3
Key=col4, Value=value4
----------------------Before------------------------
'col1','col2','col3','col4',
'value1','2','3','value4',

-----------------------After-----------------------
'col1','col2','col3','col4'
'value1','2','3','value4'

언급URL : https://stackoverflow.com/questions/2053830/how-do-i-remove-all-specific-characters-at-the-end-of-a-string-in-php

반응형