Vui lòng giúp tôi với cụm từ thông dụng.regex cách thay thế liên kết twitter
tôi thấy hòa bình tốt mã này:
var ify = function() {
return {
"link": function(t) {
return t.replace(/(^|\s+)(https*\:\/\/\S+[^\.\s+])/g, function(m, m1, link) {
return m1 + '<a href=' + link + '>' + ((link.length > 25) ? link.substr(0, 24) + '...' : link) + '</a>';
});
},
"at": function(t) {
return t.replace(/(^|\s+)\@([a-zA-Z0-9_]{1,15})/g, function(m, m1, m2) {
return m1 + '@<a href="http://twitter.com/' + m2 + '">' + m2 + '</a>';
});
},
"hash": function(t) {
return t.replace(/(^|\s+)\#([a-zA-Z0-9_]+)/g, function(m, m1, m2) {
return m
1 + '#<a href="http://search.twitter.com/search?q=%23' + m2 + '">' + m2 + '</a>';
});
},
"clean": function(tweet) {
return this.hash(this.at(this.link(tweet)));
}
};
}();
Nhưng nó không làm việc đúng cách.
Lúc đầu trong trang của tôi có thể có <b>@username</b>
và cho nguyên nhân regex này isnt làm việc (tôi nghĩ rằng tôi cần phải thêm nhân vật này "<" và ">" đến "tại chức năng". Nhưng làm thế nào?)
Ở vị trí thứ hai trong hàm "băm" trong trang của tôi, trong truy vấn có thể có các ký tự không phải là zA-Z khác). Ví dụ: "такие символы" hoặc "ñ" hoặc những người khác. Và chuỗi được định dạng sẽ trông giống như #<a href="twitter.com/?q=Catalu">Catalu</a>ña
cho #Cataluña
từ
Hãy giúp tôi. Cảm ơn bạn!
này không làm việc cho hai liên kết trong một hàng như 'processTweetLinks (' @ james Đây là một bài kiểm tra liên kết. http://www.google.co.uk http://www.yahoo.co.uk '); 'trừ khi bạn thêm cờ tham lam vào cụm từ thông dụng thứ nhất:' var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9 + & @ # \ /% = ~ _ |])/gi; ' – howard10