小编Chr*_*her的帖子

Java正则表达式中字符类交叉点的背后是什么?

Java的Regex.Pattern支持以下字符类:

[a-z&&[def]]
Run Code Online (Sandbox Code Playgroud)

它与"d,e或f"匹配,称为交集.

在功能上,这与以下内容没有区别:

[def]
Run Code Online (Sandbox Code Playgroud)

这在大型RE中更易于阅读和理解.所以我的问题是,除了在字符类上指定对类似CSG的操作的完全支持之外,交叉点有什么用?

(请注意,我理解像减法的效用[a-z&&[^bc]][a-z&&[^m-p]],我对交叉口专门询问如上介绍.)

java regex

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

在Android 4.2中加载自定义字体的问题(API 17)

我有一个静态html文件"myhtml.html"存储在我的assets/html /目录中,这个html加载自定义字体(存储在assets/fonts /下),如下所示:

<style type="text/css">
    @font-face {
        font-family: 'MyFont';
        src: url('file:///android_asset/fonts/myfont.ttf');
    }
</style>
Run Code Online (Sandbox Code Playgroud)

我正在使用以下代码加载此html:

String html = getHtml(); // This method loads the myhtml.html from asset. This loads properly.
WebView webView = (WebView) findViewById(R.id.webbox);
WebSettings webSettings = webView.getSettings(); 
webSettings.setDefaultTextEncodingName("utf-8");
webSettings.setFixedFontFamily("fonts/myfont.ttf");
webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null);
Run Code Online (Sandbox Code Playgroud)

除了Android 4.2(API 17)之外,此代码适用于所有Android版本.

在Android 4.2中,加载了HTML但未加载自定义字体.

android-webview

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

与生成的protobufs的静态链接导致中止

我有一个项目,它将c ++生成的protobuf序列化器编译成一个静态库.针对此库的可执行链接,以及.so(.dll)也是如此.可执行文件稍后加载.so文件.当发生这种情况时,我得到:

[libprotobuf ERROR /mf-toolchain/src/protobuf-3.0.0-beta-1/src/google/protobuf/descriptor_database.cc:57] File already exists in database: mri.proto
[libprotobuf FATAL /mf-toolchain/src/protobuf-3.0.0-beta-1/src/google/protobuf/descriptor.cc:1128] CHECK failed: generated_database_->Add(encoded_file_descriptor, size): 
terminate called after throwing an instance of 'google::protobuf::FatalException'
what(): CHECK failed: generated_database_->Add(encoded_file_descriptor, size): 
Aborted (core dumped)
Run Code Online (Sandbox Code Playgroud)

为了清楚起见,我有一个静态库A,它由程序P和共享库S链接.后来,P加载S,我得到上面的错误.

我在stackoverflow和google上看了类似的错误,但我很确定我只是链接到库,而不是重新编译源代码.据我所知,这应该意味着编译数据是相同的.

另请注意:此问题仅发生在Linux上.这适用于Windows和OS X.

任何解决此问题的建议都表示赞赏.

c++ dll dynamic-linking protocol-buffers static-linking

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

在Scala中初始化时如何强制数组的类型?

基本上,我有一个像这样的数组:

val base_length = Array(
    0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56,
    64, 80, 96, 112, 128, 160, 192, 224, 0
  );
Run Code Online (Sandbox Code Playgroud)

当scala看到它时,它想要这样做:

base_length: Array[Int] = Array(...)
Run Code Online (Sandbox Code Playgroud)

但我更愿意这样做:

base_length: Array[Byte] = Array(...)
Run Code Online (Sandbox Code Playgroud)

我试过了:

val base_length = Array[Byte](...)
Run Code Online (Sandbox Code Playgroud)

但斯卡拉说:

<console>:4: error: type arguments [Byte] do not conform to method apply's type
parameter bounds [A <: AnyRef]
       val base_length = Array[Byte](1,2,3,4,5)
Run Code Online (Sandbox Code Playgroud)

在我看来,这基本上告诉我,Array构造函数想要从参数中找出数组的类型.通常这很棒,但在这种情况下,我有充分的理由希望数组元素是Bytes.

我已经四处寻找指导,但我似乎找不到任何东西.任何帮助都会很棒!

arrays templates scala

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

如何使用基于电子邮件地址的用户名与Prowser进行基本身份验证?

我正在使用Prowser筛选内部企业网站.一些站点使用基本身份验证,其用户名是:

username@corp.com

根据文档,为了用户摘要或基本身份验证,我需要打开这样的URL:

https://开头的用户名:password@site.com/

但是当我实际构建URL时,它看起来像这样:

HTTPS://username@corp.com:password@site.com/

这会导致URI解析错误.我无法使用Prowser找到任何其他方法来做到这一点.有没有办法手动设置这些值,例如.请求对象?或者另一种编码值的方法?

java authentication http

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

为什么GHC说这两种类型不同?我怎样才能让他们变得一样?

我已经定义了一个类:

class Query a where
  filter  :: a -> (b -> Bool) -> [b]
  ifilter :: a -> (b -> Bool) -> [(b, Int64)]
Run Code Online (Sandbox Code Playgroud)

我有一个用户定义的类型:

data Segment a = Segment {
  extents :: [Extent],
  array   :: [a]
} deriving(Eq, Show)
Run Code Online (Sandbox Code Playgroud)

最后,我试图使Segment成为Query的一个实例:

instance Query (Segment a) where
  filter  = filterSegment
  ifilter = ifilterSegment
Run Code Online (Sandbox Code Playgroud)

函数filter和ifilter都采用(Segment a)和函数(a-> Bool)并返回[a]或[(a,Int64)].

但是,我收到以下错误:

Couldn't match type `a' with `b'
      `a' is a rigid type variable bound by
          the instance declaration at src/Store/DataColumn.hs:19:10
      `b' is a rigid type …
Run Code Online (Sandbox Code Playgroud)

haskell

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