小编Dav*_*Mar的帖子

在Python中拆分带有多个分隔符的字符串

我正在使用正则表达式使用多个分隔符分割字符串.但是如果我的两个分隔符在字符串中彼此相邻,则会在结果列表中放入一个空字符串.例如:

re.split(',|;', "This,is;a,;string")
Run Code Online (Sandbox Code Playgroud)

结果是

['This', 'is', 'a', '', 'string']
Run Code Online (Sandbox Code Playgroud)

有没有办法避免''在没有添加,;分隔符的情况下进入我的列表?

python string split delimiter

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

如何在我的JSON模型类中使用保留关键字作为标识符?

我之前从未使用过Web API,但我需要一个接受/返回JSON对象的Web服务,并且使用它似乎是一个合理的事情.它看起来很简单(如果不是为了我的目的有点过分),但我需要处理的数据结构看起来像:

{
    "values":["foo", "bar"],
    "default":"bar"
}
Run Code Online (Sandbox Code Playgroud)

所以我去制作一个Model对象:

class DropDownValues {
    public string[] values { get; set; }
    public string default { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

问题是默认似乎是受保护的关键字.必须有一些方法可以解决这个问题,对吗?

.net c# asp.net-mvc asp.net-web-api

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

罗马数字到整数

我有一个产品转移,不幸的是必须与产品名称匹配.这里最大的问题是我可能会因为罗马数字而获得重复的产品.有时,相同的产品将使用罗马数字命名,有时则是常规产品.

我正在谷歌搜索可能已经制作的字符串函数来转换它,但没有运气.我想我自己也不会那么难,但我希望听到一些关于如何处理这种情况的意见,如果你知道一个已经制作好的功能,那就命名吧.

编辑:这些产品是移动设备.示例 - 三星Galaxy SII - 三星Galaxy S2

c# roman-numerals

9
推荐指数
4
解决办法
2万
查看次数

在多个项目中共享一个.editorconfig文件

我的团队在GitHub中维护了几个Java存储库。他们每个人在根文件夹中都有一个.editorconfig文件,它们完全相同。这使得维护它们有些麻烦,因为它们都必须单独更新。

我们所有人都使用IntelliJ,该功能具有可以从URL下载校验样式规则的功能,但是似乎没有一种方法可以使用.editorconfig规则来执行此操作。

我们所有的项目都使用Maven。是否可以通过API访问.editorconfig文件并使项目配置为自动下载并将其放在根文件夹中?

对于不熟悉EditorConfig的任何人,更多信息在这里

java intellij-idea maven editorconfig

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

Jackson JSON 序列化:如何在嵌套对象的所有字段都为空时忽略它?

我正在使用 Jackson 并且我有一些 JSON 模式对象设置如下:

@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class Person {

    String name;
    Child child = new Child();
    Sibling sibling = new Sibling();

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    public Child getChild() {
        return child;
    }
    public void setChild(Child child) {
        this.child = child;
    }

    public Sibling getSibling() {
        return sibling;
    }
    public void setSibling(Sibling sibling) {
        this.sibling = sibling;
    }
}

@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class Child {

    String name;

    public String …
Run Code Online (Sandbox Code Playgroud)

java json jackson

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

将C++程序转换为C#

我正在开发一个项目,我正在手动将C++代码转换为C#.我有C#的工作知识,但我以前从未使用过C++.

我需要知道的是如何处理头文件,因为C#没有这样的东西.假设我有buffer.h和buffer.cpp,我只是将它们转换并将它们包含在同一个buffer.cs文件中吗?

C++头文件是否与Ada spec文件有任何关联?

c# c++

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

如何重置Kafka偏移以匹配尾部位置?

我们正在使用Storm与Kafka和ZooKeeper.我们遇到了一种情况,我们不得不删除一些主题并用不同的名称重新创建它们.除了从新主题名称中读取之外,我们的卡夫卡鲸鱼喷水保持不变.但是现在,当尝试从新主题中读取时,spouts正在使用旧主题分区的偏移量.因此,my-topic-name分区0的尾部位置将为500,但偏移量将为10000.

有没有办法重置偏移位置,以便它匹配主题的尾部?

java apache-kafka apache-storm apache-zookeeper

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

根据Ada中的关键字创建对象并调用其方法

这是一个后续我的问题在这里.

我在程序中得到了一点,我觉得我无法继续使用当前的结构,所以我做了很多重写.该Statement类型不再是抽象的,而各亚型Statement创建自己的实例Statement的变量.我还execute从Statements包中删除了抽象函数,因为编译器不喜欢它(每个子类型仍然有自己的execute方法).该execute函数已更改为过程,因为必须修改传入的Statement类型.我将statementFactory(以前的createStatement)移动到Statement包中.

这是我得到的错误:

statements-compoundstatements.adb:15:29: expected type "CompoundStatement" defined at statements-compoundstatements.ads:11
statements-compoundstatements.adb:15:29: found type "Statement'Class" defined at statements.ads:6
Run Code Online (Sandbox Code Playgroud)

我是Ada的初学者,但我的预感是因为execute程序在CompoundStatements(它是语句的"子类")中,它永远无法看到execute语句的另一个"子类" 的方法.我能想到的唯一解决方案是将execute调用execute过程的所有过程转储到Statement包中,但这似乎是不可取的.但这仍然无法解释为什么stmt.all被用作类型Statement'Class而不是创建的类型statementFactory.

这是新代码:

package Statements is

   type Statement is tagged private;

   type Statement_Access is access all Statement'Class;
   ParserException : Exception;

   procedure createStatement(tokens : Vector; S : out …
Run Code Online (Sandbox Code Playgroud)

pointers ada

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

使用Beautiful Soup将CSS属性转换为单独的HTML属性?

我正在尝试编写一个程序,该程序将采用HTML文件并使其更适合电子邮件.现在所有转换都是手动完成的,因为没有一个在线转换器完全符合我们的需要.

这听起来像是一个很好的机会来突破我的编程知识的极限并实际编写一些有用的东西,所以我提议尝试在业余时间编写一个程序来帮助使流程更加自动化.

我对HTML或CSS了解不多,所以我主要依靠我的兄弟(谁知道HTML和CSS)来描述这个程序需要做什么改变,所以如果我问一个愚蠢的问题,请耐心等待.这对我来说是一个全新的领域.

大多数更改都非常基础 - 如果您看到标记/属性X然后将其转换为标记/属性Y.但是在处理包含样式属性的HTML标记时遇到了麻烦.例如:

<img src="http://example.com/file.jpg" style="width:150px;height:50px;float:right" />
Run Code Online (Sandbox Code Playgroud)

我希望尽可能将样式属性转换为HTML属性(或将样式属性转换为更友好的电子邮件属性).所以转换后它应该是这样的:

<img src="http://example.com/file.jpg" width="150" height="50" align="right"/>
Run Code Online (Sandbox Code Playgroud)

现在我意识到并非所有CSS样式属性都具有HTML等价物,所以现在我只想专注于那些.我掀起了一个可以进行这种转换的Python脚本:

from bs4 import BeautifulSoup
import re

class Styler(object):

    img_attributes = {'float' : 'align'}

    def __init__(self, soup):
        self.soup = soup

    def format_factory(self):
        self.handle_image()

    def handle_image(self):
        tag = self.soup.find_all("img", style = re.compile('.'))
        print tag
        for i in xrange(len(tag)):
            old_attributes = tag[i]['style']
            tokens = [s for s in re.split(r'[:;]+|px', str(old_attributes)) if s]
            del tag[i]['style']
            print tokens

            for j in xrange(0, len(tokens), 2):
                if tokens[j] in Styler.img_attributes: …
Run Code Online (Sandbox Code Playgroud)

html css python beautifulsoup html-parsing

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

有没有办法避免在C#中编写重复的代码?

我想在表格中插入更多的球.但是,为了让它反弹,我必须为不同的球反复编码相同的算法.我是否知道如果不一遍又一遍地写它,我有什么办法可以做到的?我的代码如下.

int bBA1; //The x axis from the upper left corner
int bBA2; //The y axis from the upper left corner 
int spdBBA1; //The change of x
int spdBBA2; //The change of y

public StartGame()
{
    InitializeComponent();
}

private void StartGame_Load(object sender, EventArgs e)
{
    //Loads the ball on the screen at bottom of the window
    bBA1 = this.ClientSize.Width / 5; //The x axis the ball is loaded at
    bBA2 = this.ClientSize.Height - 10; //The y axis the ball is …
Run Code Online (Sandbox Code Playgroud)

c# arrays

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