字符串中的 jquery 正则表达式(文本和图像)
我需要 jQuery(类似 Twitter)
- 正则表达式中的两件事,一个正常的链接
- 检查链接是否是图像或网站/文档/等(这样我就可以使用灯箱或其他东西)。
例如,我有来自 json 对象的以下文本:
嗨,我创建了这个 http://flicker.com/image 我去了 http://www.google.com #home #alone
- 则必须检查链接
- 如果内容是图片, 必须添加一个元素。
- 主题标签“#”也必须链接。
我对 jQuery 有一点了解,我编辑/创建了以下脚本(可能不太好,但目前它正在工作)
var username='yourname'; // set user name
var format='json'; // set format, you really don't have an option on this one
var url='http://api.twitter.com/1/statuses/user_timeline/'+username+'.'+format+'?callback=?'; // make the url
var count = 0; // Start from 0
var maxTweet = 10; // Maximum tweets (max limit is 15)
$.getJSON(url,function(tweet){ // get the tweets
$.each( tweet, function(i, l){
var month1 = {}; // building my month array
month1['Jan'] = '01';
month1['Feb'] = '02';
month1['Mar'] = '03';
month1['Apr'] = '04';
month1['May'] = '05';
month1['Jun'] = '06';
month1['Jul'] = '07';
month1['Aug'] = '08';
month1['Sep'] = '09';
month1['Oct'] = '10';
month1['Nov'] = '11';
month1['Dec'] = '12';
var d = tweet[count].created_at; // getting date
var d = d.split(" "); // Splitting date
var e = tweet[count].created_at.split(" "); // Splitting date
var a = d[1]; // Month
var month = month1[a]; // still month
var d = d[5] + '-' + month + '-' + d[2] + 'T' + d[3] + 'Z' + d[4]; // date like 30-05-2011T13:45:45Z+1000
var date = prettyDate(d); // using prettyDate founded on the Web
if(count < maxTweet){
if(date = 'undefined'){
var date = e[2] + '-' + month + '-' + e[5] + ' om ' + e[3];
} // if it is out of range
$("#twitter .slides_container").append('<p> <a href="http://twitter.com/#!/' + tweet[count].user.name + '" target="_blank"><img src="' + tweet[count].user.profile_image_url + '" alt="' + tweet[count].user.name + '" class="twitpic"></a> ' + tweet[count].text + '<br /><em>' + date + '</em></p>')
}
});
count++;
});
tweet[count].text = 我需要
编辑正则表达式的位置(count++;)
I need need 2 things in jQuery (twitter like)
- regex a normal link
- check if the link is an image or an website/doc/etc (so i can use a lightbox or something).
for example i have the following text from a json object:
Hi i created this
http://flicker.com/image and i went to
http://www.google.com #home #alone
- the link must be checked if the content is an image
- the A element must be added.
- the hashtag '#' must also be linked.
I have a little knowledge about jQuery and i edited/created the following script (maybe not nice but at this moment it is working)
var username='yourname'; // set user name
var format='json'; // set format, you really don't have an option on this one
var url='http://api.twitter.com/1/statuses/user_timeline/'+username+'.'+format+'?callback=?'; // make the url
var count = 0; // Start from 0
var maxTweet = 10; // Maximum tweets (max limit is 15)
$.getJSON(url,function(tweet){ // get the tweets
$.each( tweet, function(i, l){
var month1 = {}; // building my month array
month1['Jan'] = '01';
month1['Feb'] = '02';
month1['Mar'] = '03';
month1['Apr'] = '04';
month1['May'] = '05';
month1['Jun'] = '06';
month1['Jul'] = '07';
month1['Aug'] = '08';
month1['Sep'] = '09';
month1['Oct'] = '10';
month1['Nov'] = '11';
month1['Dec'] = '12';
var d = tweet[count].created_at; // getting date
var d = d.split(" "); // Splitting date
var e = tweet[count].created_at.split(" "); // Splitting date
var a = d[1]; // Month
var month = month1[a]; // still month
var d = d[5] + '-' + month + '-' + d[2] + 'T' + d[3] + 'Z' + d[4]; // date like 30-05-2011T13:45:45Z+1000
var date = prettyDate(d); // using prettyDate founded on the Web
if(count < maxTweet){
if(date = 'undefined'){
var date = e[2] + '-' + month + '-' + e[5] + ' om ' + e[3];
} // if it is out of range
$("#twitter .slides_container").append('<p> <a href="http://twitter.com/#!/' + tweet[count].user.name + '" target="_blank"><img src="' + tweet[count].user.profile_image_url + '" alt="' + tweet[count].user.name + '" class="twitpic"></a> ' + tweet[count].text + '<br /><em>' + date + '</em></p>')
}
});
count++;
});
tweet[count].text = where i need the regex
edited (count++;)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可能会发现这样的东西很有用,可以链接您的推文。
不幸的是,除非您做出一些假设,例如链接是否包含 .jpg 等,否则您并不总是知道 URL 末尾的内容(这是您实现灯箱功能所需的操作)。
You may find something like this useful, to link up your tweets.
Unfortunately you don't always know what's at the end of the URL without going there (which is what you would need to do to implement your lightbox feature) unless you make some assumptions such as if the link contains .jpg etc.