AJAX を介して PHP から返される文字列があります。文字列値は次のようになります。
<img src="/images/error.png"/>Invalid name`
<
で始まり、で終わる文字列をカットする方法はあります>
か?
<img/>
文字列からののみが必要です。<img/>
完全な文字列が別のページで使用されているため、PHP からのみを返したくありません。
AJAX を介して PHP から返される文字列があります。文字列値は次のようになります。
<img src="/images/error.png"/>Invalid name`
<
で始まり、で終わる文字列をカットする方法はあります>
か?
<img/>
文字列からののみが必要です。<img/>
完全な文字列が別のページで使用されているため、PHP からのみを返したくありません。
これはどういう意味ですか?これは警告します'<img src="/images/error.png"/>'
var img = '<img src="/images/error.png"/>Invalid name';
var slice = img.slice(0, img.indexOf('>') + 1);
alert(slice);
var str = '<img src="/images/error.png"/>Invalid name';
alert(str.substring(str.indexOf('<'), str.indexOf('>')+1));
編集:このアクションが何度も繰り返される場合は、パフォーマンスも考慮する必要があります。これまでに得た純粋なJSの回答ごとに2つのバージョンを参照してください。最初の3つは、タグが0('<')で始まると想定していますが、最後の3つはそうではありません:http://jsperf.com/15512887
私の答えが選ばれなくても、私は今自分自身を誇りに思っています:-)
split() メソッドを使用して、最後の文字を追加することができます。
var returnedString = '<img src="/images/error.png"/>Invalid name';
var returnedImage = returnedString.split('>')[0] +'>';
文字列の最初のタグのみを明示的に取得する場合は、次のようになります。
var s = ' <img src="/images/error.png"/>Invalid name';
var tag = '<' + s.split(/\W+/g)[1] + '>';
ただし、堅牢性のために次のようなことを行う必要があります。
var parts = s.split(/\W+/g);
var tag = parts.length? '<' + parts[1] + '>' : '';