2013-05-23 2 views
-3
<form name="search" method="post" > 
Input texts and numbers: <input type="text" name="find"><br> 
</form> 
<?php 
if(!empty($_POST)){ 
    echo $_POST['find'];  
} 

질문 :PHP에서 문자열을 찾는 방법?

내가 원하는 echo all the contents before texts에 (를 포함하여 텍스트), 예. 사용자 입력 'mynumber11 '이면 사용자 입력 '123mynumber11'이면 'mynumber'을 표시하고 '123mynumber'은 어떻게 표시합니까?

+0

그냥 마지막을 제거 할 명확히하기 위해 11. 마지막 2 자리 숫자가 11 인 경우, 그 2 자리 숫자는 제거해야합니다. –

+0

입력 후에 '232mytext3455'이면 '232mytext'가 표시됩니다. – user2318128

+0

@chandresh_cool 언급했듯이 답을 누군가에게 알리기 위해 의견을 게시 할 필요가 없습니다. –

답변

4

그냥 끝나기 전에 모든 숫자를 제거 할 수보십시오 :

if(!empty($_POST)) 
    $findStr = preg_replace('/\d+$/', '', $_POST['find']); 
+0

나는 텍스트 앞에 숫자를 보관하고 싶다. – user2318128

+0

위의 예는 텍스트 끝 부분의 숫자 만 제거합니다. – anubhava

+1

** [라이브 데모] (http://www.rubular.com/r/zC1PGwxKt7) ** – anubhava

1

$str = "123mynumber11"; 

do 
{ 
    $n = substr($str,-1); 
    if(is_numeric($n)) 
     $str = substr($str,0,-1); 
} 
while(is_numeric($n)); 

echo($str); 
3

당신은 rtrim()를 사용할 수 있습니다

echo rtrim($_POST['find'], '1234567890'); 
+0

rtrim은 문자열 끝에 지정된 공백과 문자를 제거합니다. – shark

관련 문제