小编Chr*_*use的帖子

使用javascript正则表达式将url转换为html <a>标签并将图片网址转换为<img>标签

我正在尝试编写一个函数,用于从文本区域中的文本中的常规链接和标记中创建标记.

它是第一次为两者工作,但如果我在其中粘贴"a href"标签,它会双重链接它.由于imageRegex检查,它不会执行图像.任何想法如何让这个工作?

请记住,textarea可能有两种类型的URL.

$("#message").blur(function() {  
    var imageRegex = /\.(png|jpg|jpeg|gif)$/;
    var s = $(this).val().replace(/(?:^|[^"'])(\b(?:https?|ftp):\/\/[a-z0-9-+&@#\/%?=~_|!:,.;]*[a-z0-9-+&@#\/%=~_|])/gim, function(str) {
        if (str.match(imageRegex)) {
            return('<img src="' + str + '" />');
        } else {
           return('<a href="' + str + '">' + str + '</a>');
        }       
    });  
    $(this).val(s);         
});
Run Code Online (Sandbox Code Playgroud)

javascript regex jquery

8
推荐指数
1
解决办法
2913
查看次数

无法在c#中公开类

这可能看起来像是一个初学者的问题,因为这是我的第一个大型c#项目转换.目前正在将一个大型项目从vb.net转换为c#,我对c#语法非常了解并且转换非常顺利.我的一个问题是 - 在vb.net中我可以使用import语句公开一个类:

Imports DataAccessLayer.DataAccess
Run Code Online (Sandbox Code Playgroud)

并说在DataAccess类中有一个名为GetDataTable的方法,我可以通过使用GetDataTable(params)来调用它

现在,使用C#,我只能这样做

Using DataAccessLayer;
Run Code Online (Sandbox Code Playgroud)

并且不能公开DataAccess类,只是DataAccessLayer命名空间并且必须执行DataAccess.GetDataTable(params),如果我必须在任何地方执行此操作,这显然会为项目添加大量额外代码.

有没有办法公开类而不仅仅是命名空间?这是我的构造函数

namespace DataAccessLayer
{
    public class DataAccess
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

c# vb.net asp.net

0
推荐指数
1
解决办法
73
查看次数

标签 统计

asp.net ×1

c# ×1

javascript ×1

jquery ×1

regex ×1

vb.net ×1