2012-01-28 23 views
5

Làm thế nào tôi có thể phân tích chuỗi này trên javascript,Parse chuỗi trong javascript

var string = "http://www.facebook.com/photo.php?fbid=322916384419110&set=a.265956512115091.68575.100001022542275&type=1";

Tôi chỉ muốn để có được những "" trên chuỗi. Tôi bằng cách nào đó phân tích chuỗi này nhưng, vẫn không đủ để có được những gì tôi muốn.

mã của tôi:

var newstring = string.match(/set=[^ ]+/)[0]; 

lợi nhuận:

a.265956512115091.68575.100001022542275&type=1 
+0

Để phân tích đúng cách này, trước tiên bạn nên chia cắt nó thành bộ phận của nó (e, g, giá trị chính của chuỗi truy vấn), sau đó URL-giải mã khóa và giá trị, và chỉ sau đó trích xuất dữ liệu bạn quan tâm từ giá trị bằng khóa bạn quan tâm. – Lucero

Trả lời

3

Bạn có thể sử dụng split() sửa đổi mã của bạn như thế này:

var newstring = string.match(/set=[^ ]+/)[0].split(".")[1]; 

Đối với một cách tiếp cận chung chung hơn để phân tích các chuỗi truy vấn xem:

Parse query string in JavaScript

Sử dụng ví dụ minh họa ở đó, bạn sẽ làm như sau:.

var newstring = getQueryVariable ("set") chia ("") [1];

+0

tại sao bạn không sử dụng nhóm? –

+0

Tnx. Nó đã làm việc! –

+0

Bản năng đầu tiên của tôi là sửa đổi regex, nhưng tôi nghĩ khái niệm phân tích chuỗi truy vấn tổng quát hơn là hữu ích. Câu trả lời của câu trả lời của Braveyard (liên kết ở trên) dựa trên sự phân chia() và tôi chỉ tiến lên bằng hiện vật. – biscuit314