我想弄清楚如何根据给定的正则表达式构建 CFG(上下文无关语法)。比如a(ab)*(a|b)我觉得有一个算法可以通过,但是真的很混乱。这是我到目前为止所得到的:
S->aAB;
A->aAb|empty;
B->a|b;
Run Code Online (Sandbox Code Playgroud)
这看起来对吗?任何帮助,将不胜感激。
我有一个我需要解析的XML(我无法控制XML或其格式):
<?xml version="1.0" encoding="UTF-8"?>
<Siri xmlns="http://www.siri.org.uk/siri" version="1.3">
<ResponseTimestamp>2016-01-27T21:49:18.6841619-07:00</ResponseTimestamp>
<VehicleMonitoringDelivery version="1.3">
<ResponseTimestamp>2016-01-27T21:49:18.6841619-07:00</ResponseTimestamp>
<ValidUntil>2016-01-27T21:49:28.6841619-07:00</ValidUntil>
<VehicleActivity>
<RecordedAtTime>2016-01-27T21:49:18.6841619-07:00</RecordedAtTime>
<MonitoredVehicleJourney>
<LineRef>750</LineRef>
<DirectionRef>SOUTHBOUND</DirectionRef>
<FramedVehicleJourneyRef>
<DataFrameRef>2016-01-27T00:00:00-07:00</DataFrameRef>
<DatedVehicleJourneyRef>2519014</DatedVehicleJourneyRef>
</FramedVehicleJourneyRef>
<PublishedLineName>FRONTRUNNER</PublishedLineName>
<OriginRef>601084</OriginRef>
<DestinationRef>801164</DestinationRef>
<Monitored>True</Monitored>
<VehicleLocation>
<Longitude>-111.86847</Longitude>
<Latitude>40.401028</Latitude>
</VehicleLocation>
<ProgressRate>1</ProgressRate>
<CourseOfJourneyRef>18127</CourseOfJourneyRef>
<VehicleRef>101</VehicleRef>
<MonitoredCall>
<StopPointRef>801160</StopPointRef>
<VisitNumber>1</VisitNumber>
<VehicleAtStop>false</VehicleAtStop>
</MonitoredCall>
<OnwardCalls>
<OnwardCall>
<StopPointRef>23076</StopPointRef>
<VisitNumber>1</VisitNumber>
<StopPointName>OREM CENTRAL STATION</StopPointName>
</OnwardCall>
</OnwardCalls>
<Extensions>
<LastGPSFix>2016-01-27T21:49:09.473</LastGPSFix>
<Scheduled>False</Scheduled>
<Bearing>137.91188191173691</Bearing>
<Speed>76.7898894465909</Speed>
<DestinationName>Provo</DestinationName>
</Extensions>
</MonitoredVehicleJourney>
</VehicleActivity>
</VehicleMonitoringDelivery>
</Siri>
Run Code Online (Sandbox Code Playgroud)
我有一个超级基础和剥离类车辆只有根元素,像这样:
import org.simpleframework.xml.Root;
@Root(name="VehicleActivity")
public class Vehicle
{
public Vehicle(){}
}
Run Code Online (Sandbox Code Playgroud)
在xml中,我只关心VehicleActivity标签内的数据.
当我尝试解析它时,从改造回调的成功方法,我得到错误Attribute 'version' does not have a match in …
我正在尝试执行composer update <package>但收到以下错误:
请求的包 <package>(锁定在 <tag>,要求为 <version>)由 <package>[<tag>] 满足,但这些与您的要求或最低稳定性相冲突。
同时,该标记<tag>仅作为字符串存在于我的 composer.lock 文件中,我认为该文件仅由 修改composer update,而不是读回。
我试过运行composer why-not <package>,但它的输出并没有真正解释这个问题:
<program> <other-version> 需要 <package> (<version>)
在这种情况下,“锁定”是什么意思,我该如何解决这个问题?
我的应用程序在 Laravel 8 上使用laravel/passport 10.0.1. 将php开发服务器上的版本从升级7.4到 后8.0,It was not possible to parse your key, reason: ""出现错误(没有来自 openssl_error_string 的任何消息)。
任何想法如何解决它?
我有一个问题,一直在返回null的MySQL语句,虽然我能够弄清楚,但是原因让我有些困惑.
这是有问题的查询的简化版本:
SELECT id FROM users WHERE id = id = 2;
Run Code Online (Sandbox Code Playgroud)
发生错误是因为id =重复,删除其中一个id =解决了问题(因为有一个用户的id为2).但令我有点困惑的是它如何"无声地失败",返回0行,而不是给出错误.
我在SQL Server上测试了类似的查询,并得到了错误消息Incorrect syntax near '='(类似于我对MySQL的预期).
最初,我认为MySQL 在前两个字段之间进行了比较,最后一个是比较的结果(0表示false,1表示true).像这样的东西:
SELECT id FROM users WHERE (id = id) = 2;
Run Code Online (Sandbox Code Playgroud)
但后来我提出了一些与之相矛盾的问题.让我详细说明一下.
想象一下这个表(称为"用户"):
id | username
----|----------------
0 | anonymous
1 | root
2 | john
3 | doe
Run Code Online (Sandbox Code Playgroud)
如果我这样做SELECT * FROM users WHERE id = id = 1,我将获得所有4个用户.而且SELECT * FROM users WHERE id = id = …
我在SimpleXML和PHP中使用它:
foreach ($xml->children() as $node) {
echo $node->attributes('namespace')->id;
}
Run Code Online (Sandbox Code Playgroud)
这将打印id所有节点的属性(使用命名空间).
但现在我想知道$nodeXML文件中的行号.
我需要行号,因为我正在分析XML文件,并返回可能问题的用户信息来解决它们.所以我需要说一句:"这里你在第X行有一个错误".我确信XML文件将采用标准格式,这将有足够的换行符以使其有用.
当我运行这个时:
git lfs clone https://github.com/Unity-Technologies/FPSSample.git
Run Code Online (Sandbox Code Playgroud)
我收到这条消息:
警告:“git lfs clone”已弃用,并且不会使用“git clone”的新标志进行更新“git clone”已在上游 Git 中更新,具有与“git lfs clone”相当的速度。
这是什么意思?我需要做什么?
我在 ubuntu 服务器 20.04 上测试了 phpmyadmin 5.0.4 和 5.1.0.RC1,出现以下错误:
Warning in ./libraries/classes/Config.php#1285
mkdir(): Permission denied
Backtrace
./libraries/classes/Config.php#1285: mkdir(
string '/usr/share/phpmyadmin//var/lib/phpmyadmin/tmp/twig',
integer 504,
boolean true,
)
./libraries/classes/Template.php#57: PhpMyAdmin\Config->getTempDir(string 'twig')
./libraries/classes/Theme.php#101: PhpMyAdmin\Template->__construct()
./libraries/classes/Theme.php#174: PhpMyAdmin\Theme->__construct()
./libraries/classes/ThemeManager.php#307: PhpMyAdmin\Theme::load(
string './themes/pmahomme',
string '/usr/share/phpmyadmin/./themes/pmahomme/',
)
./libraries/classes/ThemeManager.php#79: PhpMyAdmin\ThemeManager->loadThemes()
./libraries/classes/ThemeManager.php#121: PhpMyAdmin\ThemeManager->__construct()
./libraries/classes/ThemeManager.php#385: PhpMyAdmin\ThemeManager::getInstance()
./libraries/common.inc.php#232: PhpMyAdmin\ThemeManager::initializeTheme()
./index.php#15: require_once(./libraries/common.inc.php)
Run Code Online (Sandbox Code Playgroud)
我尝试通过 www-data(原始“root”)更改我的 ./libraries/classes/Config.php 和 /var/lib/phpmyadmin/tmp/twig(也创建了此文件夹“twig”)的所有者,但是错误没有解决。
我的供应商配置是:
<?php
/**
* File for vendor customization, you can change here paths or some behaviour,
* which vendors such as Linux distributions might want to …Run Code Online (Sandbox Code Playgroud) 此代码在 PHP 8 中给出的结果与所有以前版本的 PHP 中的结果不同:
if ('' == 0)
echo 'PHP '.phpversion().' says yes';
else
echo 'PHP '.phpversion().' says no';
PHP 7.2.12 says yes
PHP 7.4.14 says yes
PHP 8.0.0 says no
Run Code Online (Sandbox Code Playgroud)
这似乎是一个重大变化。这里发生了什么?
嗨,我有解析这个xml的问题:
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Items>
<Item>
<TdlID>202</TdlID>
<TdlDesc>1234567890</TdlDesc>
<Due>2013-07-19</Due>
<Done>0</Done>
<Creadate>2013-07-08 23:43:51</Creadate>
<UsrLogin>demouser</UsrLogin>
<Prj>3211</Prj>
<Chngdate>2013-07-17</Chngdate>
</Item>
<Item>
<TdlID>218</TdlID>
<TdlDesc>fghjkljh</TdlDesc>
<Due>2013-07-31</Due>
<Done>1</Done>
<Creadate>2013-07-10 11:06:10</Creadate>
<UsrLogin>demouser</UsrLogin>
<Prj>abcd</Prj>
<Chngdate>2013-07-17</Chngdate>
</Item>
</Items>
<Status>
<code>0</code>
<message>Its Working!!!</message>
</Status>
</Response>
Run Code Online (Sandbox Code Playgroud)
我知道,这个问题在ElementList中是100%,但不知道,在哪里:(
package sk.jbase.todolist.xml;
import org.simpleframework.xml.Element;
import org.simpleframework.xml.ElementList;
import org.simpleframework.xml.Order;
import java.util.ArrayList;
import java.util.List;
@Element(name = "Items")
@Order(elements = "Item")
public class Items {
@ElementList(name = "Item")
protected List<Item> item;
public List<Item> getItems() {
if (item == null) {
item = new ArrayList<Item>();
}
return this.item; …Run Code Online (Sandbox Code Playgroud)