问题列表 - 第2836页

用于提取标记属性的正则表达式

我正在尝试提取锚标记(<a>)的属性.到目前为止,我有这样的表达:

(?<name>\b\w+\b)\s*=\s*("(?<value>[^"]*)"|'(?<value>[^']*)'|(?<value>[^"'<> \s]+)\s*)+
Run Code Online (Sandbox Code Playgroud)

适用于字符串之类的

<a href="test.html" class="xyz">
Run Code Online (Sandbox Code Playgroud)

和(单引号)

<a href='test.html' class="xyz">
Run Code Online (Sandbox Code Playgroud)

但不是没有引号的字符串:

<a href=test.html class=xyz>
Run Code Online (Sandbox Code Playgroud)

如何修改我的正则表达式使其适用于没有引号的属性?或者有更好的方法吗?

谢谢!

更新: 感谢您提供的所有好评和建议.有一件事我没有提到:遗憾的是我必须修补/修改我自己编写的代码.没有时间/金钱可以自下而上重写这些东西.

html regex

47
推荐指数
8
解决办法
9万
查看次数

优化iPhone应用程序启动时间

任何拥有iPhone的人都知道,有些应用程序会快速启动,而其他应用程序需要几秒钟.

确保iPhone应用程序启动并以流畅的方式使用的最佳技术是什么?

iphone cocoa-touch

17
推荐指数
1
解决办法
3862
查看次数

Javascript:如何确定链接是否与其所在页面的目标域相同?

为了通过谷歌分析跟踪非HTML文档,我需要提到的算法.这应该:

  • 不硬编码域名
  • 忽略协议(即http/https)
  • 不用担心"www"的存在/不存在(任何绝对链接都会以"www"为前缀,所有页面都将通过"www"提供)

这是因为我需要通过从仅IE的"attachEvent"调用的函数来访问它.

更新对不起,我的措辞非常糟糕.真正的问题是通过一个事件使这个工作,因为IE有自己的事件处理组成世界.请考虑以下事项:

function add_event(obj) {
    if (obj.addEventListener)
        obj.addEventListener('click', track_file, true);
    else if (obj.attachEvent)
        obj.attachEvent("on" + 'click', track_file);
}

function track_file(obj) { }
Run Code Online (Sandbox Code Playgroud)

好像浏览器中track_file中的"obj"不一样 - 我如何引用IE中点击的内容?

javascript cross-browser hyperlink

7
推荐指数
1
解决办法
5638
查看次数

如何找出使用.NET锁定文件的进程?

我已经看到了几个关于使用HandleProcess Monitor的答案,但我希望能够在我自己的代码(C#)中找到哪个进程正在锁定文件.

我有一种令人讨厌的感觉,我将不得不在win32 API中徘徊,但如果有人已经这样做并且可以让我走上正轨,我真的很感激帮助.

更新

类似问题的链接

c# file-locking

148
推荐指数
5
解决办法
13万
查看次数

为单元测试准备编码的最佳策略

我有一个缺少大量代码覆盖率的解决方案.我需要重构这个代码来解耦才能开始创建单元测试.什么是最好的策略?我首先想到的是,我应该将业务逻辑从业务对象的数据访问分离到首先得到一些组织,然后从那里向下钻取.由于许多类不支持单一责任原则,因此很难开始测试它们.

是否有其他建议或最佳实践从采用传统解决方案并使其成型为代码覆盖和单元测试做好准备?

c# refactoring unit-testing code-coverage

4
推荐指数
1
解决办法
522
查看次数

提升lambda for_each/transform puzzle

有谁知道为什么

  vector<int> test(10);
  int a=0;

  for_each(test.begin(),test.end(),(_1+=var(a),++var(a)));

  for_each(test.begin(),test.end(),(cout << _1 << " "));
  cout << "\n"
Run Code Online (Sandbox Code Playgroud)

给出:"0 1 2 3 4 5 6 7 8 9"

  transform(test.begin(),test.end(),test.begin(), (_1+=var(a),++var(a)));
  ...(as before)
Run Code Online (Sandbox Code Playgroud)

给出:"1 2 3 4 5 6 7 8 9 10"

c++ lambda boost

4
推荐指数
1
解决办法
1674
查看次数

如何使用jQuery向DropDownList添加选项?

正如问题所说,如何使用jQuery向DropDownList添加新选项?

谢谢

jquery user-interface drop-down-menu

290
推荐指数
5
解决办法
44万
查看次数

什么是主要应用程序窗口的酷壁纸或背景(如果有的话)?

开放窗口是否增强了应用程序的吸引力?它应该是图片还是淡淡的蓝色和白色?

styling

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

CVSROOT环境

如何在WinCVS中设置CVSROOT环境变量?

cvs

2
推荐指数
1
解决办法
2万
查看次数

在.NET中构建XML文档的最佳方法是什么?

在.NET中创建XML文档似乎有很多选择.什么是最好的方法?

.net xml

3
推荐指数
1
解决办法
998
查看次数