相关疑难解决方法(0)

使用php preg_match(正则表达式)将camelCase单词拆分为单词

我该怎么做才能分开这个词:

oneTwoThreeFour
Run Code Online (Sandbox Code Playgroud)

到一个数组,以便我可以得到:

one Two Three Four
Run Code Online (Sandbox Code Playgroud)

preg_match

我厌倦了这个,但它只是完整的说法

$words = preg_match("/[a-zA-Z]*(?:[a-z][a-zA-Z]*[A-Z]|[A-Z][a-zA-Z]*[a-z])[a-zA-Z]*\b/", $string, $matches)`;
Run Code Online (Sandbox Code Playgroud)

php regex string preg-match

64
推荐指数
7
解决办法
3万
查看次数

如何在python中拆分CamelCase

我想要实现的是这样的:

>>> camel_case_split("CamelCaseXYZ")
['Camel', 'Case', 'XYZ']
>>> camel_case_split("XYZCamelCase")
['XYZ', 'Camel', 'Case']
Run Code Online (Sandbox Code Playgroud)

所以我搜索并找到了这个完美的正则表达式:

(?<=[a-z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])
Run Code Online (Sandbox Code Playgroud)

作为我尝试的下一个逻辑步骤:

>>> re.split("(?<=[a-z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])", "CamelCaseXYZ")
['CamelCaseXYZ']
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用,如何从python中的链接问题获得结果?

编辑:解决方案摘要

我用一些测试用例测试了所有提供的解决方案:

string:                 ''
AplusKminus:            ['']
casimir_et_hippolyte:   []
two_hundred_success:    []
kalefranz:              string index out of range # with modification: either [] or ['']

string:                 ' '
AplusKminus:            [' ']
casimir_et_hippolyte:   []
two_hundred_success:    [' ']
kalefranz:              [' ']

string:                 'lower'
all algorithms:         ['lower']

string:                 'UPPER'
all algorithms:         ['UPPER']

string:                 'Initial'
all algorithms:         ['Initial']

string:                 'dromedaryCase'
AplusKminus:            ['dromedary', 'Case']
casimir_et_hippolyte:   ['dromedary', …
Run Code Online (Sandbox Code Playgroud)

python regex camelcasing

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

正则表达式分裂骆驼案

我在JavaScript中有一个正则表达式,使用以下代码将我的驼峰大小写字母分割为大写字母(我后来从这里得到):

"MyCamelCaseString"
    .replace(/([A-Z])/g, ' $1')
    .replace(/^./, function(str){ return str.toUpperCase(); })
Run Code Online (Sandbox Code Playgroud)

因此返回:

"My Camel Case String"
Run Code Online (Sandbox Code Playgroud)

这很好.但是,我想把它提升一个档次.有人可以帮助我使用正则表达式,只有当前一个字符为小写且后者为大写时才会拆分.

因此,上面的例子将是我期望的结果,但如果我这样做:

"ExampleID"
Run Code Online (Sandbox Code Playgroud)

然后我回来了:

"Example ID"
Run Code Online (Sandbox Code Playgroud)

代替

"Example I D"
Run Code Online (Sandbox Code Playgroud)

因为它在每个大写字母中分裂并忽略它之前的任何内容.

希望有道理!谢谢:).

javascript regex

37
推荐指数
6
解决办法
3万
查看次数

buildConfigField取决于flavor + buildType

我试图定义一个buildConfigVariable取决于香精 + buildType.理想情况下,这就是我想要的

productFlavors {
    strawberry {
        buildConfigField "String", "WS_API_KEY", name + variant.buildType.name
    }
    ... more flavors ..
}
Run Code Online (Sandbox Code Playgroud)

name确实包含"strawberry",但我不知道是否可以访问variantbuildType.

放置在Android闭包之外我可以访问BuildType变体,但后来我无法调用buildConfigField

android.applicationVariants.all { variant ->
    println "****************************"
    println "variant: ${variant.name}"
    println "flavor: ${variant.flavorName}"
    println "****************************"

    if (variant.buildType.name == 'release') {
        if (variant.flavorName == 'strawberry') {
            buildConfigField "String", "WS_API_KEY", '"strawberry_release"'
        } else {
            buildConfigField "String", "WS_API_KEY", '"chocolate_release"'
        }
    } else if(variant.buildType.name == 'debug') {
        if …
Run Code Online (Sandbox Code Playgroud)

android android-gradle-plugin android-productflavors

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

如何在JavaScript中用大写和小写分割字符串?

是否可以按案例在JavaScript中拆分字符串,以便下面的字符串(myString)将转换为下面的数组(myArray):

var myString = "HOWtoDOthis";
var myArray = ["HOW", "to", "DO", "this"];
Run Code Online (Sandbox Code Playgroud)

我已经尝试过下面的正则表达式,但它只针对camelCase进行了拆分:

.match(/[A-Z]*[^A-Z]+/g);
Run Code Online (Sandbox Code Playgroud)

javascript regex

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

正则表达式用大写和低字符分割String

我想分裂如下: TwitterHashtagIsVeryCOMPLICATED

分裂后的字符串如: Twitter Hashtag Is Very COMPLICATED

我可以使用正则表达式吗?

非常感谢任何建议.

java regex hashtag

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

与正则表达式代码作斗争:CamelCase to camel_case

我能够将字符串转换MyClassNamemy_class_name使用正则表达式

但是我的解决方案不起作用MyOtherTClassName,应该转换为my_other_t_class_name.

另外,这也不起作用ClassNumber1,应该将其转换为class_number_1

没有进入我的解决方案,这还不够好,我想帮助转换正则表达式代码:

  1. MyClassName -> my_class_name
  2. MyOtherTClassName -> my_other_t_class_name
  3. MyClassWith1Number -> my_class_with_1_number

谢谢,

盖伊

c# regex

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

Perl正则表达式逐字拆分

我有一个由几个单词组成的字符串(由大写字母分隔).

例如:

$string1="TestWater"; # to be splited in an array @string1=("Test","Water")
$string2="TodayIsNiceDay"; # as @string2=("Today","Is","Nice","Day")
$string3="EODIsAlwaysGood"; # as @string3=("EOD","Is","Always","Good")
Run Code Online (Sandbox Code Playgroud)

我知道Perl容易拆分使用split函数作为固定字符,或者匹配正则表达式可以将$ 1,$ 2与固定数量的变量分开.但是如何动态完成呢?提前致谢!

那个帖子Spliting CamelCase没有回答我的问题,我的问题更多地与Perl中的正则表达式相关,那个是在Java中(差异在这里适用).

regex perl

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