小编Pat*_*ric的帖子

DIV容器内的HTML图像底部对齐

我有一个固定高度的div标签.大多数图像具有相同的高度和宽度.

我想对齐div底部的图像,以便它们排列整齐.这是我到目前为止:

<div id="randomContainer">
    <div id="imageContainer">
        <img src="1.png" alt=""/>
        <img src="2.png" alt=""/>
        <img src="3.png" alt=""/>
        <img src="4.png" alt=""/>
    </div>
    <div id="navigationContainer">
        <!-- navigation stuff -->
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS看起来像:

div#imageContainer {
    height: 160px;  
    vertical-align: bottom;
    display: table-cell;
}
Run Code Online (Sandbox Code Playgroud)

我设法在与底部对齐图像display: table-cellvertical-align: bottomCSS属性.

有没有更简洁的方法将div显示为表格单元格并对齐DIV标签底部的图像?

html css image alignment spacing

40
推荐指数
4
解决办法
18万
查看次数

从Swift中的数组中获取随机元素

我有一个像这样的数组:

var names: String = [ "Peter", "Steve", "Max", "Sandra", "Roman", "Julia" ]
Run Code Online (Sandbox Code Playgroud)

我想从该数组中获取3个随机元素.我是从C#来的,但是我很快就不知道从哪里开始.我想我应该首先将阵列洗牌,然后从中挑选前3个项目?

我尝试使用以下扩展名对其进行随机播放:

extension Array
{
    mutating func shuffle()
    {
        for _ in 0..<10
        {
            sort { (_,_) in arc4random() < arc4random() }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但它然后说"'()'在"shuffle()"的位置不能转换为'[Int]'".

为了挑选我使用的一些元素:

var randomPicks = names[0..<4];
Run Code Online (Sandbox Code Playgroud)

到目前为止看起来不错.

怎么洗牌?或者有没有人有更好/更优雅的解决方案?

arrays random shuffle swift

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

使用RegEx在字符串中的特定文本后查找数字

我有一个多行字符串,如下所示:

2012-15-08 07:04 Bla bla bla blup
2012-15-08 07:05 *** Error importing row no. 5: The import of this line failed because bla bla
2012-15-08 07:05 Another text that I don't want to search...
2012-15-08 07:06 Another text that I don't want to search...
2012-15-08 07:06 *** Error importing row no. 5: The import of this line failed because bla bla
2012-15-08 07:07 Import has finished bla bla
Run Code Online (Sandbox Code Playgroud)

我想要的是在RegularExpression(使用PowerShell)的帮助下提取所有有错误的行号.所以我需要找到"***Error import row no."和下面的":"之间的数字,因为这总是会给我行号.

我查看了其他各种RegEx问题,但说实话,答案对我来说就像中文.

试图在http://regexr.com/的帮助下构建RegEx 但到目前为止还没有成功,例如使用以下模式:

"Error importing row …
Run Code Online (Sandbox Code Playgroud)

regex string powershell string-matching powershell-4.0

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

使用paramiko防止SFTP/SSH会话超时

我正在使用paramiko连接到我必须下载并处理一些文件的SFTP服务器.

服务器的超时设置为5分钟,但有时几天发生的文件处理时间可能超过超时.因此,当我想更改服务器上的工作目录以处理其他一些文件时,sftp.chdir(target_dir))我得到一个连接已超时的异常:

文件buildbdist.win32eggparamikosftp://ftp.py,第138行,在_write_all中引发EOFError()

为了解决这个问题,我认为激活keep alive将是最好的选择,所以我在传输上使用"set_keepalive"将其设置为30秒:

ssh = paramiko.SSHClient()
ssh.set_missing_hostkey_policy(paramiko.AutoAddPolicy())
ssh.connect(ssh_server, port=ssh_port, username=ssh_user, password=password)
transport = ssh.get_transport()
transport.set_keepalive(30)
sftp = transport.open_sftp_client()
Run Code Online (Sandbox Code Playgroud)

但没有任何改变.这种变化绝对没有效果.我不知道我是否误解了set_keepalive这里的概念,或者可能是服务器(我没有访问权限)忽略了keep alive包.

这不是解决这个问题的正确方法,还是我应该尝试不同的方法?我不喜欢"手动"向ls服务器发送一些命令以使会话保持活动的想法.

python ssh sftp timeout paramiko

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

Python:如何在方括号内获取多个元素

我有一个像这样的字符串/模式:

[xy][abc]
Run Code Online (Sandbox Code Playgroud)

我试图获取方括号内包含的值:

  • XY
  • ABC

括号内没有括号.无效:[[abc][def]]

到目前为止,我有这个:

import re
pattern = "[xy][abc]"
x = re.compile("\[(.*?)\]")
m = outer.search(pattern)
inner_value = m.group(1)
print inner_value
Run Code Online (Sandbox Code Playgroud)

但这只给了我第一个方括号的内在价值.

有任何想法吗?我不想使用字符串拆分函数,我确信单独使用RegEx可能会以某种方式.

python regex pattern-matching match python-2.7

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

使用flexbox的响应式磁贴布局

我想创建一个tile布局(类似于metro风格的tile布局或者它叫做Windows 8).所以我有一些瓷砖/盒子,有些是二次的,有些可以是两倍和二次,有些可以有两倍的宽度.到目前为止一切都那么好,但是我有一个响应性的问题,我认为flexbox会为我解决......但也许我错了.

目前这些盒子是这样的(箭头显示盒子应该"流动"): 在此输入图像描述

但是我希望它们看起来像这样: 在此输入图像描述

或者甚至是这个,如果一个大瓷砖放在中间的某个地方(注意:编号也可能有点不同,例如,大瓷砖左边的方框可能是1-4,然后大瓷砖可能是5号,如果这更容易做到): 在此输入图像描述

这是我目前的代码(参见http://codepen.io/anon/pen/oXmraK):

<div class="container">
  <div class="bigbox">Box 1</div>
  <div class="box">Box 2</div>
  <div class="box">Box 3</div>
  <div class="box">Box 4</div>
  <div class="box">Box 5</div>
  <div class="box">Box 6</div>
  <div class="box">Box 7</div>
  <div class="widebox">Box 8</div>
  <div class="box">Box 9</div>
  <div class="box">Box 10</div>
  <div class="box">Box 11</div>
  <div class="box">Box 12</div>
  <div class="box">Box 13</div>
  <div class="box">Box 14</div>
  <div class="box">Box 15</div>
  <div class="box">Box 16</div>
  <div class="box">Box 17</div>
  <div class="box">Box 18</div>
  <div class="box">Box 19</div>
</div>
Run Code Online (Sandbox Code Playgroud)

和CSS:

.container {
    display:flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start; …
Run Code Online (Sandbox Code Playgroud)

html css layout flexbox responsive-design

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

用不同的字符替换字符串中的多个点但数量相同

我有一个像下面的字符串"blaa ... blup..blaaa ... bla."

必须用"_"替换每个具有多个点的部分,但它必须与替换的字符具有相同的数量.

该字符串应该导致:"bla___blup__blaaa___bla".

请注意,最后一个点未被替换,因为它没有其他点"已连接".

我尝试在powershell中使用以下正则表达式方法,但无论是否有3个或更多点,我总是得到匹配的第2个:

$string -replace '(.)\1+',("_"*'$&'.length)
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

regex string powershell replace

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

PowerShell项目,全局设置放在哪里?

我们正在使用 PowerShell(帮助我们设置一些 SharePoint 环境/租户的脚本/函数的集合)构建一个更大的项目。

许多功能应该重用存储在单个中央位置的设置。

我找不到如何最好地创建和构建此类设置文件/位置的“最佳实践”。

我的想法是将全局设置存储在单独的文件(模块文件)中,例如Settings.psm1 ,其内容如下:

# Set vars
$global:scriptEnvironment = "SP2016HOSTINGDEV"
$global:logFileName = "z_Migration_to_SP2016.log"
$global:languageMapping = @{
    "en-US" = 1;
    "de-DE" = 2;
}
$global:oldWsps = @(
    [WspFile]@{ Filename = "comapany.solution.wsp"; IsDeployable = $true; IsGloballyDeployable = $false; FullTrustBinDeployment = $false },
    [WspFile]@{ Filename = "company.solution2.server.wsp"; IsDeployable = $true; IsGloballyDeployable = $false; FullTrustBinDeployment = $false }
)
...
Run Code Online (Sandbox Code Playgroud)

在其他模块/脚本中,我总是可以包含如下设置:

# Set vars
$scriptDirectory = Split-Path -parent $PSCommandPath

# Module import
Import-Module (Join-Path $scriptDirectory Settings.psm1) -Force -ErrorAction …
Run Code Online (Sandbox Code Playgroud)

powershell settings global-variables project-structure powershell-module

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

Android应用内结算:从不调用onServiceConnected,bindService返回"false"

我目前正尝试在应用中添加应用内结算功能,以便用户可以进行小额捐款.我使用最新版本的Android Studio进行开发,并遵循本指南(一步一步,我正在做的每一个完全像提到...至少我认为我做:-)):https://developer.android.com /google/play/billing/billing_integrate.html

AIDL文件放在上面提到的位置(在src/maincom.android.vending.billing包中),我看到它是在该gen文件夹下生成的.

当我测试产品的检索时,我注意到该方法onServiceConnected从未被调用,它在活动中实现,如下所示:

IInAppBillingService mService;

ServiceConnection mServiceConn = new ServiceConnection() {
   @Override
   public void onServiceDisconnected(ComponentName name) {
       mService = null;
   }

   @Override
   public void onServiceConnected(ComponentName name,
      IBinder service) {
       mService = IInAppBillingService.Stub.asInterface(service);
   }
};
Run Code Online (Sandbox Code Playgroud)

对服务的绑定是这样的(在同一个活动中):

@Override
public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_donation);
  Intent serviceIntent =
      new Intent("com.android.vending.billing.InAppBillingService.BIND");
  serviceIntent.setPackage("com.android.vending");
  bindService(serviceIntent, mServiceConn, Context.BIND_AUTO_CREATE);
}
Run Code Online (Sandbox Code Playgroud)

我注意到两件事:

  • 当我离开捐赠活动时,我在控制台中看到一个异常:... has leaked ServiceConnection ... that was originally bound here- 我看到有些人建议在应用程序上下文中替换使用bindService而不是活动,事实上如果我这样做,问题就消失了.但我认为这与我onServiceConnected从未打过电话的主要问题无关,而且为什么在官方指南中呼吁这项活动呢? …

android serviceconnection in-app-billing android-billing onserviceconnected

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

添加图像以与CSS链接

我有一些网址,我想添加相同的图像.我有以下代码:

a.linkArrow
{ 
    background: transparent url('../images/abc.png') no-repeat center right;
    padding-right: 60px;
}
Run Code Online (Sandbox Code Playgroud)

一个链接示例:

<a class="inkArrow" href="#abc">Abc?</a>
Run Code Online (Sandbox Code Playgroud)

问题是,图像显示在链接文本的左侧.我希望图像始终显示在文本的右侧,并且从链接文本的起始位置到图像的起始位置的距离始终相同.因此,当我连续多个链接时,链接的图像对齐.图像应该是可点击的并且与链接指向相同的URL(我不确定是否可以将它包含在此方法的相同标记中.

有任何想法吗?

html css image stylesheet

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

将.NET Core登录到文件和控制台-带时间戳

我是.NET核心的新手,还没有机会深入了解依赖项注入。但是我理解这个概念,并且知道这是一件好事,而且我的应用需要它。由于可能需要在某个时候增强或切换日志记录功能。

我已经启动了使用类库(.net Standard 2.0)的控制台应用程序,应该将内容注销到控制台以及日志文件中。

目前,我遵循一些指南并使用Microsoft.Extensions.Logging.Console配置日志记录(尚无文件可用)。该记录器的输出是,它为每个条目写两行,例如:

info: SampleWebConsoleApp.Program[0]
      This is a test of the emergency broadcast system.
Run Code Online (Sandbox Code Playgroud)

我不了解您,但是我有点不喜欢两行登录的输出。我的大脑无法解析:-)。我喜欢在一行上加上开头的时间戳。据我发现,似乎控制台记录器无法更改为单行并带有时间戳。

于是我的旅程开始了。我找到了Serilog,NLog或我以前使用的老朋友log4net之类的东西。

我尝试使用Serilog,因为它看起来很简单,并且还具有一个我也需要的文件记录器。因此,我开始淘汰旧的控制台记录器,并集成了Serilog控制台和文件记录器。但是后来我发现了一些这样的例子:

static void Main(string[] args)
{
        Log.Logger = new LoggerConfiguration()
          .WriteTo.File("consoleapp.log")
          .CreateLogger();
        ...
}
Run Code Online (Sandbox Code Playgroud)

但这似乎与我对依赖注入的稀疏知识相矛盾,因为我认为应该像这样配置(假设!):

private static void ConfigureServices(IServiceCollection services)
{
    ...
    services.Configure<UnknownSerilogConfigurationClass>(config => config.FileName = "consoleapp.log");
}
Run Code Online (Sandbox Code Playgroud)

我看到有人提到,Serilog本身就是记录器工厂,因此是DI的反模式。

所以现在我对从这里去哪里有些困惑。

对于一个相当简单的控制台应用程序,应该使用哪种支持依赖项注入的日志记录框架?我必须允许配置输出,以使其包含时间戳,并且输出应位于一行上。

有什么建议么?

.net logging timestamp dependency-injection .net-core

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