2013-02-01 38 views
6

से स्ट्रिप छुपा चरित्र यह कुछ आसान होना चाहिए लेकिन मुझे पता नहीं लगाया जा सकता है।स्ट्रिंग

प्रश्न में साइट यूटीएफ -8 एन्कोडेड है।

एक ग्राहक को हमारी वेबसाइट पर एक फॉर्म भरने में परेशानी हो रही है। यहां उनके द्वारा दर्ज किया गया उदाहरण डेटा है।

SPICER-SMITHS

यह एक नियमित रूप से स्ट्रिंग की तरह दिखता है खो दिया है, लेकिन आप कॉपी जब कि नोटपैड जैसे ऐप्लिकेशन में स्ट्रिंग ++ आप देखेंगे एक "?" शब्द "स्मिथ" ("स्मिथ? एस") में दिखाई देते हैं।

स्क्रिप्ट फ़ील्ड को स्वच्छ करता है और निम्न वर्णों को हटाने का अतिरिक्त चरण चलाता है: "\r\n", "\n", "\r", "\t", "\0", "\x0B"

हालांकि यह इस छिपे हुए चरित्र को पकड़ नहीं रहा है।

क्या कोई जानता है कि यहां क्या हो रहा है?

संपादित करें: मैं PHP का उपयोग कर रहा हूं। यहां वह फ़ंक्शन है जिसका उपयोग मैं फ़ील्ड को स्वच्छ करने के लिए करता हूं:

function strip_hidden_chars($str) 
{ 
    $chars = array("\r\n", "\n", "\r", "\t", "\0", "\x0B"); 

    $str = str_replace($chars," ",$str); 

    return preg_replace('/\s+/',' ',$str); 
} 

EDIT 2: @thaJeztah ने मुझे जवाब दिया। जिस स्ट्रिंग का मैं परीक्षण कर रहा था वह हमारे समर्थन टिकट से आउटपुट था जब ग्राहक ने कॉपी किया था और उसे जो भी एप्लिकेशन इस्तेमाल कर रहा था उससे चिपकाया था। वास्तविक इनपुट था

SPICER-स्मिथ की

+0

आप क्या पटकथा भाषा का उपयोग कर रहे हैं? क्या आप छिपा वर्णों को पट्टी करने के लिए इस्तेमाल कोड शामिल कर सकते हैं? – thaJeztah

+0

धन्यवाद, मैंने अपनी पोस्ट संपादित की। –

+0

मुझे पता चला कि यह चरित्र था http://www.fileformat.info/info/unicode/char/92/index.htm मुझे नहीं पता कि इसे कैसे बाहर निकालना है। –

उत्तर

4

आप यहाँ देखने के लिए कोशिश कर सकते हैं; नियंत्रण पात्रों को हटा दें?

Remove control characters from php String

+0

खोज के लिए धन्यवाद। मैंने वहां कुछ चीजों की कोशिश की लेकिन यह अभी भी काम नहीं कर रहा है। –

+0

मैंने आपका जवाब स्वीकार कर लिया क्योंकि इससे मुझे यह महसूस हुआ कि मैं मूल रूप से इनपुट किए गए आउटपुट की बजाय आउटपुट का परीक्षण कर रहा था। –

+1

@BillH क्या आप अपना प्रश्न अपडेट कर सकते हैं और इसे हल करने के लिए जो कुछ किया है उसे जोड़ सकते हैं? StackOverflow की गुणवत्ता को संरक्षित करने की कोशिश कर रहा है :) – thaJeztah

1

इस रूप में भी अच्छी तरह से काम

$chars = array("\r\n", '\\n', '\\r', "\n", "\r", "\t", "\0", "\x0B"); 
str_replace($chars,"<br>",$data);