问题列表 - 第4171页

正则表达式在尊重CDATA时转义HTML&符号

我编写了一个内容管理系统,该系统使用服务器端正则表达式在页面响应中将&符号转发到客户端的浏览器之前.正则表达式注意到已经被转义或是HTML实体的一部分的&符号.例如,以下内容:

a & b, c & d, © 2009

改为:

a & b, c & d, © 2009

(只&修改了第一个.)这是正则表达式,它是从Rails助手中获取和修改的:

html.gsub(/&(?!([a-zA-Z][a-zA-Z0-9]*|(#\d+));)/) { |special| ERB::Util::HTML_ESCAPE[special] }
Run Code Online (Sandbox Code Playgroud)

虽然这很好用但确实有问题.正则表达式不知道任何<![CDATA[]]>可能围绕未转义的&符号.这对于嵌入式JavaScript保持不变是必要的.例如,这个:

<script type="text/javascript">
  // <![CDATA[
  if (a && b) doSomething();
  // ]]>
</script>
Run Code Online (Sandbox Code Playgroud)

不幸的是这样呈现:

<script type="text/javascript">
  // <![CDATA[
  if (a &amp;&amp; b) doSomething();
  // ]]>
</script>
Run Code Online (Sandbox Code Playgroud)

这当然是JavaScript引擎无法理解的.

我的问题是:有没有办法修改正则表达式,就像现在一样,除了它保持CDATA部分内的文本不变?

由于正则表达式开头并不那么简单,因此这个问题可能更容易回答:是否可以编写一个正则表达式,将所有字母更改为除<'和' 之间的字母之外的句点>?例如,一个会"some <words> are < safe! >"变成".... <words> ... < safe! >"

ruby regex ruby-on-rails

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

改进/修复C样式块注释的正则表达式

我正在编写(在C#中)一个简单的解析器来处理一个看起来很像经典C的脚本语言.

在我拥有的一个脚本文件中,我用来识别/*阻止注释*/的正则表达式将进入某种无限循环,占用100%的CPU.

我正在使用的正则表达式是这样的:

/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/
Run Code Online (Sandbox Code Playgroud)

有关为什么会被锁定的任何建议?

或者,我可以使用的另一个正则表达式是什么?

更多信息:

  • 使用面向.NET 3.5的C#3.0;
  • 我正在使用Regex.Match(string,int)方法在字符串的特定索引处开始匹配;
  • 我让程序运行了一个多小时,但比赛没有完成;
  • 传递给Regex构造函数的选项是RegexOptions.MultilineRegexOptions.IgnorePatternWhitespace;
  • 正则表达式适用于我的453个测试文件中的452个.

c c# regex parsing comments

10
推荐指数
2
解决办法
7530
查看次数

库的设计时验证

我有一个图书馆,我想许可和分发.

我知道如何为运行时许可类/库.实际上我已经好几次了.我知道如何许可用户控件.我也做了好几次.

令我难过的是如何许可一个库(没有拖放用户控件或组件)仅用于开发.如何在设计时许可图书馆?

有什么想法/提示吗?

c# winforms

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

用于图像识别的C++库:包含字符串的图像

有没有人知道用于拍摄图像并在其上执行图像识别的c ++库,以便它可以根据给定的字体和/或字体高度找到字母?即使是不允许你选择字体的那个也不错(例如:readLetters(Image image).

c++ ocr fonts image-recognition

6
推荐指数
2
解决办法
5033
查看次数

将List <List <T >>转换为C#中的List <T>

我有一个List<List<int>>.我想将它转换为List<int>每个int都是唯一的.我想知道是否有人使用LINQ有一个优雅的解决方案.

我希望能够使用Union方法,但每次都会创建一个新的List <>.所以我想避免做这样的事情:

List<int> allInts = new List<int>();

foreach(List<int> list in listOfLists)
   allInts = new List<int>(allInts.Union(list));
Run Code Online (Sandbox Code Playgroud)

有什么建议?

谢谢!

c# linq generics union list

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

JPA没有生成"on delete set null"FK限制

我有两个相关的分支JPA注释.报警和状态.一个警报可以有一个状态.

我需要的是能够删除一个状态并将空值"传播"到该状态中已删除的警报.

也就是说,我需要将外键定义为" on delete set null ".

@Entity
public class Alarm {
    @Id
    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="sequence")
    @SequenceGenerator(name="sequence", sequenceName="alarm_pk_seq")
    private Integer id;

    @OneToOne(cascade=CascadeType.ALL)
    @JoinColumn(name="idStatus")
    private Status status;

    // get/set
}

@Entity
public class Status {
    @Id
    @Column(name="idStatus")
    private Integer id;

    private String description;

    // get/set
}
Run Code Online (Sandbox Code Playgroud)

例:

之前:

STATUS
id  description
1   new
2   assigned
3   closed

ALARMS
id  status
1   1
2   2
3   2
Run Code Online (Sandbox Code Playgroud)

之后(删除id = 2的状态)

STATUS
id  description
1   new
3   closed

ALARMS
id  status
1   1 …
Run Code Online (Sandbox Code Playgroud)

java orm hibernate jpa foreign-keys

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

Reporting Services使用多个工作表导出到Excel

我目前正在构建一个MS Reporting Services报告,该报告可以渲染为excel.我正在试图弄清楚如何设置报告,以便它在报告上创建多个数据表(选项卡).我知道在报告中输入分页符会为您提供一个新的工作表,但是,有没有办法命名每个选项卡而不是默认为(工作表1,工作表2)等.

有谁知道这是怎么做的?

提前致谢!

reporting-services

51
推荐指数
4
解决办法
14万
查看次数

关闭应用时提示用户保存

我正在撰写归结为文档编辑器的内容.当应用程序关闭时,我需要提示用户保存更改.这很容易.我的问题是什么时候提示用户,而只是丢弃未保存的数据并关闭.

在FormClosing事件中,CloseReason枚举包括:

  • 没有
  • WindowsShutDown
  • MdiFormClosing
  • UserClosing
  • TaskManagerClosing
  • FormOwnerClosing
  • ApplicationExitCall

我认为WindowsShutDown和TaskManagerClosing不应该导致"保存更改?" 提示出现,以防止应用程序挂起该提示显示.

这是标准做法,还是我应该在这里做些什么呢?

为清楚起见,这是代码:

protected override void OnFormClosing(FormClosingEventArgs e)
{
    base.OnFormClosing(e);

    if (!(e.CloseReason == CloseReason.WindowsShutDown || e.CloseReason == CloseReason.TaskManagerClosing)
            && this.ChangesPending())
    {
        switch (MessageBox.Show(this, "Save changes?", "Save Changes", MessageBoxButtons.YesNoCancel))
        {
            case DialogResult.Yes:
                this.Save();
                break;
            case DialogResult.No:
                // Do nothing
                break;
            case DialogResult.Cancel:
                e.Cancel = true;
                break;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

.net shutdown application-shutdown winforms

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

Java嵌入式数据库比较

我打算开发一个小型(Java)应用程序来管理我的财务状况.我相信我需要使用嵌入式数据库,但我对此问题没有经验.我试着看一些可用的产品,但我无法决定哪一种更适合我.H2,HSQLDB,DerbyBerkeley DB似乎都是不错的候选者,但我仍然看不出他们如何相互比较.感谢您帮助我们比较它们并帮助我决定使用哪一个.

我打算在我的应用程序中使用Hibernate(除非你建议使用DBMS提供的API),但我也希望能够使用SQL浏览工具(修改模式和更改数据)轻松编辑数据库.

谢谢.

java database comparison embedded-database

97
推荐指数
11
解决办法
12万
查看次数

有一些像Objective C++的东西吗?

我正在读一篇关于iPhone编程的帖子,我注意到关于Objective C++的讨论,帖子中显示的代码看起来主要像Objective-C,但C++中也有几个片段.是否真的可以用C++编写Cocoa?

c++ macos cocoa objective-c objective-c++

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