所有数据types的所有数据指针在一个平台上的大小是否相同?

是char* , int* , long*还是long long* (相同大小)?

在单个正则expression式中折叠并捕获重复模式

我经常遇到需要从string中获取许多令牌的情况,经过无数次的尝试,我找不到简化过程的方法。 所以我们假设文字是: 启动:testing – testing – LOREM-存有-SIR-doloret – 等 – 等 – 的东西:结束 这个例子里面有8个项目,但是说可能有3到10个项目。 我理想的喜欢这样的事情: start:(?:(\w+)-?){3,10}:end很好,干净,但它只捕获最后一场比赛。 看这里 我通常在简单的情况下使用这样的东西: start:(\w+)-(\w+)-(\w+)-?(\w+)?-?(\w+)?-?(\w+)?-?(\w+)?-?(\w+)?-?(\w+)?-?(\w+)?:end 3组是强制性的,另外7组是可选的,因为最大限制为10,但是这看起来并不“好”,如果最大限制为100并且比赛更复杂,那么写和跟踪将是一个痛苦。 演示 我能做到的最好的: start:(\w+)-((?1))-((?1))-?((?1))?-?((?1))?-?((?1))?-?((?1))?-?((?1))?:end 特别是如果比赛复杂但仍然很长的话更短。 演示 任何人都设法使它作为1正则expression式解决scheme没有编程 ? 我最感兴趣的是如何能够在PCRE中完成,但其他口味也可以。 更新: 目的是通过RegEx单独validation匹配并捕获match 0的单个令牌,而没有任何操作系统/软件/编程语言限制 更新2(赏金): 在@ nhahtdh的帮助下,我通过\G获得了RegExp: (?:start:(?=(?:[\w]+(?:-|(?=:end))){3,10}:end)|(?!^)\G-)([\w]+) 演示甚至更短,但可以描述不重复的代码 我也对ECMA风格感兴趣,因为它不支持\G想知道是否有另一种方法,特别是不使用/g修饰符。

C89,C90或C99的所有function都需要原型吗?

为了达到真正的标准,C语言中的所有函数(main函数除外)都有一个原型,即使它们只在被定义在同一个翻译单元之后才被使用?

如何使用JQuery将点击事件添加到iframe

我在页面上有一个iframe,来自第三方(广告)。 当点击iframe(logging一些内部统计信息)时,我想触发点击事件。 就像是: $('#iframe_id').click(function() { //run function that records clicks }); 基于HTML的: <iframe id="iframe_id" src="http://something.com"></iframe> 我似乎无法得到任何变化的工作。 思考?

无法获取连接工厂客户端

我得到这个错误: ERROR/MapActivity(258): Couldn't get connection factory client 一切正常,突然间,这是怎么回事? 我知道我的API密钥是好的,因为一个月我一直在使用它完美。 怎么突然它不显示地图活动,并在logcat中发布错误?

在JavaScript中重载算术运算符?

考虑到这个JavaScript的“类”定义,这是我能想到的最好的方法: var Quota = function(hours, minutes, seconds){ if (arguments.length === 3) { this.hours = hours; this.minutes = minutes; this.seconds = seconds; this.totalMilliseconds = Math.floor((hours * 3600000)) + Math.floor((minutes * 60000)) + Math.floor((seconds * 1000)); } else if (arguments.length === 1) { this.totalMilliseconds = hours; this.hours = Math.floor(this.totalMilliseconds / 3600000); this.minutes = Math.floor((this.totalMilliseconds % 3600000) / […]

使用JQuery – 阻止表单提交

如何防止使用jQuery提交表单? 我尝试了一切 – 看到下面我尝试了3个不同的选项,但它都不起作用: $(document).ready(function() { //option A $("#form").submit(function(e){ e.preventDefault(); }); //option B $("#form").submit(function(e){ stopEvent(e); }); //option C $("#form").submit(function(){ return false; }); }); 什么可能是错的? 更新 – 这是我的HTML: <form id="form" class="form" action="page2.php" method="post"> <!– tags in the form –> <p class="class2"> <input type="submit" value="Okay!" /> </p> </form> 这里有什么不对吗?

删除另一个进程正在使用的文件

我试图编程删除一个文件,但该文件显然是由另一个进程(这恰好是我的程序)使用。 基本上,程序通过使用FromUri从一个文件夹中加载图像来创build一个Bitmap,然后将其加载到一个Image数组中,该数组又成为一个堆栈面板的子组件。 不是非常有效,但它的工作原理。 我已经尝试清除堆栈面板的孩子,并使数组中的图像为空,但我仍然得到IOException告诉我,该文件正在被另一个进程使用。 有没有其他的方式来从我的应用程序的进程中删除文件?

绑定属性会导致在视图中find重复的组件ID

这里是JSF代码: <h:inputText binding="#{bean.input}" /> 这里是一个支持bean绑定支持的一部分: private HtmlInputText input; public void setInput(HtmlInputText input) { this.input = input; } public HtmlInputText getInput() { return this.input; } 当我第一次打开页面时,一切正常,但当我第二次打开它(刷新或打开在另一个选项卡或任何其他方式相同的URL)时,我得到重复的ID错误。 错误消息说, <h:inputText>没有唯一的ID。 这是一个长的错误信息的一部分: java.lang.IllegalArgumentException: Component ID formId:inputId has already been found in the view +id: inputId type: javax.faces.component.html.HtmlInputText@cafebabe 添加binding属性后发生问题。 如果我删除它,一切将再次正常工作。 我如何正确使用binding属性?

无法为通用types的Java集合添加值

为什么这个代码不能编译( Parent是一个接口)? List<? extends Parent> list = … Parent p = factory.get(); // returns concrete implementation list.set(0, p); // fails here: set(int, ? extends Parent) cannot be applied to (int, Parent)