小编Bil*_*ill的帖子

在SQLite3中,如何在LIKE子句中进行SQL转义?

我想在sqlite3中运行LIKE查询,并安全地转义用户的输入.基本上,我想做这样的事情:

char* query = "SELECT * FROM table WHERE LOWER(notes) LIKE '%?%'";
sqlite3_stmt* statement;
sqlite3_prepare_v2( database, query, -1, &statement, NULL );
Run Code Online (Sandbox Code Playgroud)

但是?在LIKE表达式中不受尊重.有人知道怎么做吗?

sql sqlite

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

从Haskell或Objective-C生成语法颜色的超链接源代码

是否有任何软件包可以获取充满源代码的目录(Objective-C和Haskell是我感兴趣的那些)并从中生成语法颜色的HTML,其中函数名称是其源代码的链接?

haskell objective-c

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

在Scala中查找匹配行的惯用方法

我有一个Iterable[String]代表文件中的行,我想找到该序列中与正则表达式匹配的第一行,并返回由正则表达式提取的数值.文件足够大,将整个内容加载到内存然后调用toString()或其他东西是没有意义的,所以我需要一次一行.

这是我的(它有效):

val RateRegex : Regex = ".....".r

def getRate(source : Source) : Option[Double] = {
  import java.lang.Double._

  for(line <- source.getLines() ) {
    line match {
      case RateRegex(rawRate) => return Some(parseDouble(rawRate))
      case None => ()
    }
  }

  return None
}
Run Code Online (Sandbox Code Playgroud)

这对我来说似乎很难看.感觉非常迫切,并且case None => ()可能会被评论说"你做错了".

我想我想要类似于def findFirstWhereNonNone(p : Function[A,Option[B]]) => Option[B]集合元素的类型A.

是否有内置方法可以让我以更实用的方式执行此操作?我应该写那个方法吗?

PS虽然我在使用它,是否有替代使用java.lang.Double.parseDouble?Scala的Double课不公开它.

PPS我在SO上看过很多帖子,建议SourceAPI不应该用于生产,但它们都是从2008年和2009年开始的.那还是这样吗?如果是这样,我应该为IO使用什么?

更新

我现在有:

import util.matching.Regex.Groups

for{line <- source.getLines()
    Groups(rawRate) <- RateRegex.findFirstMatchIn(line)} { …
Run Code Online (Sandbox Code Playgroud)

scala

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

为什么Scala IntelliJ插件需要很长时间才能启动我的应用程序?

我在Eclipse和IntelliJ之间来回进行Scala开发.IntelliJ的代码完成,重构和错误突出显示都更好(根据我的经验)但我最终回到Eclipse,因为每当我在IntelliJ中运行Scala应用程序时,它都经历了Eclipse以某种方式避免的这个非常长的编译过程.

我可以看到状态栏高亮,因为它加载每个单独的类,然后通过几个阶段运行它们.我知道scalac一般都很慢,但是使用命令行或Eclipse比使用IntelliJ要快得多.

是否有其他人看到这种行为?打开fsc支持会有很大的不同吗?

scala intellij-idea

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

在单个离散步骤中删除Chan或MVar的内容

我正在编写一个离散模拟,其中来自多个线程的请求值在集中队列中累积.每隔n毫秒,经理就会醒来处理请求.当经理醒来时,它应该在一个单独的步骤中检索中央队列的所有内容.处理这些时,任何尝试提交到队列的客户端线程都应该阻塞.处理完成后,队列重新打开,管理器重新进入休眠状态.

最好的方法是什么?STM的重试行为并不是我想要的.如果我使用Chan或MVar,则无法阻止客户端在处理期间将其他请求排入队列.一种方法是使用MVar作为持有队列的Chan上的互斥体.还有其他方法吗?

haskell

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

Scala是否与Haskell的Prelude.read等效?

在Haskell中,我可以编写read "(1,2)"并取回元组(1,2).在Scala有什么办法吗?我想我正在寻找的是访问scala解释器中的解析器.

scala

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

如何让jfreechart ChartPanel自动放大?

我有一个Swing JFrame,ChartPanel是唯一的组件.当我调整框架大小时,图表面板会像图像一样伸展.例如,如果我将其垂直缩小,则所有字符都会被压缩.

是否可以让ChartPanel在resize事件上重绘自身,以便在图表上显示更多细节,而不是作为静态图像拉伸?

swing jfreechart

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

Scala中的继承和初始化

我有两个看起来像这样的Scala类(释义):

abstract class GenericParser[T] {
  val lineFilter : String => Boolean

  parseData()

  def parseData() : T {
    for( line <- .... if lineFilter(line) )
      // do things
  }
}

class SalesParser extends GenericParser[SalesRow] {
  val lineFilter = line => !line.startsWith("//")

  // ....
}
Run Code Online (Sandbox Code Playgroud)

问题是,lineFilternullparseData,大概是因为parseData是当主称为GenericParser构造仍在运行,所以子类还没有完全初始化它的成员.

我可以通过使用lineFilter def而不是a 来解决这个问题val,但这是预期的行为吗?这个问题在运行时获得NPE之后才会变得明显,这似乎是不对的.

scala

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

如何回应UNUserNotification?

我正在使用UNUserNotificationiOS 10中的新框架.我可以看到如何添加操作按钮,但是当用户点击通知本身时如何响应?就我而言,它将是带有一些文字的图像.

默认行为是应用程序打开.

  1. 我是否可以使用自定义代码来检测我的应用程序是否因为UNUserNotification点击而被打开,理想情况下是否有关于通知的标识符信息?

  2. 如果我的应用程序在后台运行或关闭,它们会工作吗?UNUserNotification文档建议设置委托UNUserNotificationCenter,但我认为只有在应用程序运行时才有效.

notifications ios unusernotificationcenter

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

仅在分割视图控制器的一半上呈现模态视图控制器

我正在调整现有的iPhone应用程序以在iPad上运行.在iPhone版本中,当用户点击工具栏按钮,我将提出一个模式视图控制器具有modalTransitionStyleUIModalTransitionStyleFlipHorizontal,它做了一个非常好的"牌翻转"动画.

iPad界面基于拆分视图(MGSplitViewController实际上).工具栏按钮位于详细信息窗格上,因此当我呈现模态视图控制器时,它占据整个屏幕并且翻转过渡毫无意义.

为了获得正确的用户交互,我希望模态控制器在详细视图控制器上显示和翻转,使主视图控制器保持原样.

有没有办法做到这一点?

uiviewcontroller ipad uisplitviewcontroller modalviewcontroller ios

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

是否有适用于iOS的Tumblr API?

我想在我的iOS应用中添加简单的Tumblr帖子.是否有可用于执行此操作的插件API(最好由Tumblr直接制作)?

api tumblr ios

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