我有一个列表框,显示基于XPath查询的项目.
此XPath查询会根据用户在GUI中其他位置的选择而更改.XPath始终引用同一文档.
目前,我使用一些C#代码将控件的绑定更改为新的XPath表达式.
我想改为将XAML绑定到XPath,然后根据需要更改该XPath的值.
我该怎么办?
我会得到一个国家代码$countryCode和一个电话号码$phone_no。电话号码开头会有国家/地区代码,因此我必须从 中删除国家/地区代码$phone_no并获得不附加任何代码的普通电话号码。
例如,如果国家是印度尼西亚,我将得到:
$country_code = '62';
$phone_no = '+62509758151';
// need to get 509758151
Run Code Online (Sandbox Code Playgroud)
目前我正在尝试使用正则表达式和修剪功能
$result = ltrim( preg_replace("/[^0-9]+/", "",$phone_no) , $country_code);
// $result is 509758151
Run Code Online (Sandbox Code Playgroud)
这在这种情况下有效,但当电话号码以国家代码中提到的数字开头时失败。 $phone_no = '+62609758151';
$result = ltrim( preg_replace("/[^0-9]+/", "",$phone_no) , $country_code);
// $result is 09758151 which is incorrect
Run Code Online (Sandbox Code Playgroud)
更不用说它也会在诸如 +62629758151 之类的琐碎情况下失败
请提出建议。我知道基于字符串的解决方案,例如substr()等,但我正在寻找一些基于正则表达式的解决方案
我正在尝试在 docker 映像中安装一些软件包,但 apt-get 命令似乎不起作用......
当我在基于 ubuntu:16.04 的容器中尝试此操作时
apt-get update && apt-get install -y openssh-server
Run Code Online (Sandbox Code Playgroud)
我懂了:
Err:1 http://archive.ubuntu.com/ubuntu zesty InRelease
Temporary failure resolving 'archive.ubuntu.com'
Err:2 http://security.ubuntu.com/ubuntu zesty-security InRelease
Temporary failure resolving 'security.ubuntu.com'
Err:3 http://archive.ubuntu.com/ubuntu zesty-updates InRelease
Temporary failure resolving 'archive.ubuntu.com'
Err:4 http://archive.ubuntu.com/ubuntu zesty-backports InRelease
Temporary failure resolving 'archive.ubuntu.com'
Reading package lists... Done
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/zesty/InRelease Temporary failure resolving 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/zesty-updates/InRelease Temporary failure resolving 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/zesty-backports/InRelease Temporary failure resolving 'archive.ubuntu.com'
W: …Run Code Online (Sandbox Code Playgroud) docker run$(pwd)在卷标志(-v)中使用时,引发“无效的引用格式:存储库名称必须为小写”错误。这是当前引起问题的命令:
docker run --rm -v $(pwd)/app/polymer:/home/polymer/app jefferyb/polymer-cli polymer build
Run Code Online (Sandbox Code Playgroud) 我正在建立一个非常简单的Django项目,并且测试非常简单:
def test_name(self):
t = Thing.objects.create(name='a')
print(t.id)
import time
time.sleep(30)
self.assertEqual('a', t.name)
Run Code Online (Sandbox Code Playgroud)
当然测试通过,但是数据库(TEST数据库)没有填充我的Thing模型信息,即使我可以看到它,id因为你可以看到我的脚本.
当我连接到数据库时,Thing表总是空的(我在文档中也看到了一些关于它的评论).
现在,我如何告诉Django实际填充数据?我正在使用mysql,并检查完整的日志,我看到Django正在创建一个SAVEPOINT填充前的数据(未提交),一旦测试通过,它就会回到之前的状态SAVEPOINT.
我在用:
Django==2.0.1
mysqlclient==1.3.12
pytest==3.3.2
pytest-django==3.1.2
Run Code Online (Sandbox Code Playgroud)
我希望Django实际填充TEST数据库,使用我的测试中的信息,最后删除该数据库,这就是为什么我假设Django正在为测试创建一个全新的数据库.
我有以下XML结构:
<?xml version="1.0" ?>
<course xml:lang="nl">
<body>
<item id="787900813228567" view="12000" title="0x|Beschrijving" engtitle="0x|Description"><![CDATA[Dit college leert studenten hoe ze een onderzoek kunn$
<item id="5453116633894965" view="12000" title="0x|Onderwijsvorm" engtitle="0x|Method of instruction"><![CDATA[instructiecollege]]></item>
<item id="7433550075448316" view="12000" title="0x|Toetsing" engtitle="0x|Examination"><![CDATA[Opdrachten/werkstuk]]></item>
<item id="015071401858970545" view="12000" title="0x|Literatuur" engtitle="0x|Required reading"><![CDATA[Wayne C. Booth, Gregory G. Colomb, Joseph M. Wi$
<item id="5960589172957031" view="12000" title="0x|Uitbreiding" engtitle="0x|Expansion"><![CDATA[]]></item>
<item id="3610066867901779" view="12000" title="0x|Aansluiting" engtitle="0x|Place in study program"><![CDATA[]]></item>
<item id="19232369892482925" view="12000" title="0x|Toegangseisen" engtitle="0x|Course requirements"><![CDATA[]]></item>
<item id="3332396346891524" view="12000" title="0x|Doelgroep" engtitle="0x|Target audience"><![CDATA[]]></item>
<item id="6606851872934866" view="12000" title="0x|Aanmelden bij" engtitle="0x|Enrollment at"><![CDATA[]]></item>
<item id="1478643580820973" …Run Code Online (Sandbox Code Playgroud) 我试图在xml中为android 调用getIcon一个Preference声明.在所有资源都被夸大之后,我在onCreate为偏好调用它Activity.
图标显示但是如果我这样做findPreference(key)则会调用getIcon并在该首选项上返回的图标是null.
我错过了什么吗?
我正在使用bash脚本,我试图在内部拆分一个带有url的字符串,例如:
str=firsturl.com/123416 secondurl.com/634214
Run Code Online (Sandbox Code Playgroud)
所以这些URL是用空格分隔的,我已经使用IFS命令来拆分字符串,它工作得很好,我可以通过以下两个URL迭代:
for url in $str; do
#some stuff
done
Run Code Online (Sandbox Code Playgroud)
但我的问题是我需要得到这个拆分有多少项,所以对于str示例它应该返回2,但使用这个:
${#str[@]}
Run Code Online (Sandbox Code Playgroud)
返回字符串的长度(40对于当前示例),我的意思是我需要获取的字符数2.
使用计数器进行迭代也不起作用,因为在迭代数组之前我需要元素的数量.
有什么建议?
我无法模仿对象close()上的方法java.sql.Connection.我的最终目标是在运行JUnit测试时进行连接池.这将消除单元测试期间的连接开销,因为测试中的代码为每个SQL请求执行connect/close.
我有代码片段来演示这个问题.它成功地模拟了connect(),但无法模拟close()调用.连接和关闭都必须模拟到托管池连接.
由于该close()方法不返回值,我正在使用EasyMock.expectLastCall.
以下代码定义了mock,但是close()从不执行print语句,并且我的连接已关闭.
public class ConnectionPoolTest {
public static final String DATASOURCE_REF = "jdbc/cloudexDS";
public static final String ref = "osgi:service/javax.sql.DataSource/(osgi.jndi.service.name=" + DATASOURCE_REF + ")";
@BeforeClass
public static void setUpBeforeClass() throws Exception
{
//
// set up a simple database connection (e.g. DB2SimpleDataSource)
//
DataSource dbds = connect("localhost", "dbname", "userid", "password", 50000);
//
// now set up mock for the datasource to use the above connection
// …Run Code Online (Sandbox Code Playgroud) docker 插件安装 --grant-all-permissions vieux/sshfs docker 卷创建 -d vieux/sshfs -o sshcmd=usfo@192.168.1.1:/swarm-study/web/data -o 密码='123' sshvolume
来自 debian 复制sources.list /etc/apt/sources.list 运行 apt-get update 运行 apt-get install -y apache2 运行 apt-get install -y php7.0 php7.0-mysql 复制 apache2.conf /etc/apache2/apache2.conf 运行 groupadd -g 1000 usfo 运行 useradd -u 1000 -g 1000 usfo 复制index.php /var/www/html/index.php RUN mkdir /自动运行 复制 autorun.sh /autorun/autorun.sh 运行 chmod 755 /autorun/autorun.sh 运行 mkdir /html-data 命令./autorun/autorun.sh
用户usfo 乌斯福集团
docker run -itd -p 80:80 --mount type=volume,source=sshvolume,destination=/swarm-data …