我试图用以下标签标记一个情节:
"一些分析EC50(uM)",其中"u"是微观符号.
我目前有:
assay <- "Some Assay"
plot(0,xlab=expression(paste(assay," AC50 (",mu,"M)",sep="")))
Run Code Online (Sandbox Code Playgroud)
但这给出了:"测定EC50(uM)"而不是所需的"某些测定EC50(uM)".
建议?谢谢.
我也尝试过:
paste(assay,expression(paste(" AC50 (",mu,"M)",sep="")),sep="")
Run Code Online (Sandbox Code Playgroud) 您好,社区,
当谈到正则表达式时,我是一个完整的涂料.我推迟了学习......现在我的懒惰已经赶上了我.
我要做的是:
检查字符串是否与此格式匹配:
10_06_13
Run Code Online (Sandbox Code Playgroud)
即.今天的日期,或与"2digits_2digits_2digits"类似的日期
我做了什么:
regex='([0-9][0-9][_][0-9][0-9][_][0-9][0-9])'
if [[ "$incoming_string" =~ $regex ]]
then
# Do awesome stuff here
fi
Run Code Online (Sandbox Code Playgroud)
这在一定程度上起作用.但是当传入的字符串等于011_100_131...时,它仍然通过正则表达式检查.
如果有人能帮我指出正确的方向,我将不胜感激.
干杯
有干净的方法吗?
Expression<Func<int, string>> exTyped = i => "My int = " + i;
LambdaExpression lambda = exTyped;
//later on:
object input = 4;
object result = ExecuteLambdaSomeHow(lambda, input);
//result should be "My int = 4"
Run Code Online (Sandbox Code Playgroud)
这适用于不同类型.
显然,C# 可以处理嵌套表达式和链式表达式。如果嵌套和/或链接是线性的,那么很明显表达式的计算顺序是:
Foo(Bar(Baz().Bop()))只能按以下顺序评估:
Baz()Bop()Bar()Foo()但如果嵌套不是线性的怎么办?考虑:Foo(Baz()).Bar(Bop())
显然以下内容必须全部为真:
Baz前FooFoo前BarBop前Bar但目前尚不清楚具体何时Bop进行评估。以下任何一项都是可行的订单:
Bop()Baz()Foo()Bar()Baz()Bop()Foo()Bar()Baz()Foo()Bop()Bar()我的直觉是第三个选项可能是正确的。即它会Foo(Baz())在开始评估任何一个之前进行全面评估.Bar(Bop())
虽然我当然可以测试个别情况来看看会发生什么,但这并不能告诉我我的猜测是否总是会发生的?
但我的问题是: 分支嵌套表达式的求值顺序是定义为 C# 语言规范的一部分,还是留给编译器根据情况判断?
如果不是,至少知道它是确定性的吗?
我使用Moq来创建数据集的模拟.
我创建了一个小助手类,它允许我有一个内存存储而不是数据库,使单元测试变得轻而易举.这样我可以添加和删除我的模拟数据集中的项目,这允许我测试我的插入和删除服务调用.
在模拟的设置过程中,我有一行如下所示
this.Setup(i => i.AcademicCycles).Returns(mockStore.GetList<AcademicCycle>());
Run Code Online (Sandbox Code Playgroud)
我的模拟有很多属性,所以我想使用反射执行此设置步骤.我已经设法Returns通过反射工作的过程的一部分,但我坚持lambda方法Setup.
Setup 需要一个
Expression<Func<GoalsModelUnitOfWork, IQueryable<AcademicCycle>>> 对应于 i => i.AcademicCycles
我想动态创建它.使用反射我有以下内容:
物业名称:"AcademicCycles"
类型 IQueryable<AcademicCycle>
类型 AcademicCycle
我也有ilambda语句中的实例,它是一个GoalsModelUnitOfWork
我尝试使用自定义orderby扩展方法,我成功地处理了我的代码,但另外我想在结果中列出null或空值或零值,任何人都可以帮我解决这个问题?
这是我对orderby的扩展方法
public static IQueryable<T> OrderBy<T>(this IQueryable<T> q, string SortField, bool isAsc)
{
//var nullExpr = Expression.Constant(null, typeof(T));
var param = Expression.Parameter(typeof(T), "p");
var prop = Expression.Property(param, SortField);
var exp = Expression.Lambda(prop, param);
string method = isAsc ? "OrderBy" : "OrderByDescending";
Type[] types = new Type[] { q.ElementType, exp.Body.Type };
var mce = Expression.Call(typeof(Queryable), method, types, q.Expression, exp);
return q.Provider.CreateQuery<T>(mce);
}
Run Code Online (Sandbox Code Playgroud)
提前致谢
我知道网站上有一些答案,如果这有任何重复,我道歉,但我找到的所有答案都没有做我想做的事情.
我正在尝试指定方法信息,因此我可以通过不使用字符串以类型安全的方式获取名称.所以我试图用表达式提取它.
假设我想在此界面中获取方法的名称:
public interface IMyInteface
{
void DoSomething(string param1, string param2);
}
Run Code Online (Sandbox Code Playgroud)
目前我可以使用THIS方法获取名称:
MemberInfo GetMethodInfo<T>(Expression<Action<T>> expression)
{
return ((MethodCallExpression)expression.Body).Method;
}
Run Code Online (Sandbox Code Playgroud)
我可以调用helper方法如下:
var methodInfo = GetMethodInfo<IMyInteface>(x => x.DoSomething(null, null));
Console.WriteLine(methodInfo.Name);
Run Code Online (Sandbox Code Playgroud)
但我正在寻找我可以获取方法名称而不指定参数的版本(null,null)
像这样:
var methodInfo = GetMethodInfo<IMyInteface>(x => x.DoSomething);
Run Code Online (Sandbox Code Playgroud)
但所有尝试都无法编译
有没有办法做到这一点?
是否有可能在Criteria API .in表达式中使用参数列表?
我有这样的事情:
List<Long> list = new ArrayList<Long>();
list.add((long)1);
list.add((long)2);
list.add((long)3);
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Bewerbung> criteriaQuery = cb.createQuery(Bewerbung.class);
Root<Bewerbung> bewerbung = criteriaQuery.from(Bewerbung.class);
criteriaQuery.select(bewerbung).where(
cb.in(bewerbung.get(Bewerbung_.bewerberNummer)).value(list);
return em.createQuery(criteriaQuery).getResultList();
Run Code Online (Sandbox Code Playgroud)
表达式.value(list)不起作用,因为value()期望类型为long而不是列表的参数.在我的情况下,不可能使用子查询.任何人都可以帮我解决这个问题吗?
对不起,如果这是基本的,但我试图接受.Net 3.5.
问题:Func <>有什么好处,它有5个重载吗?从它的外观来看,我仍然可以自己创建一个类似的delgate,MyFunc <>具有5个重载甚至更多.
例如:public delegate TResult MyFunc<TResult>()和各种超载的组合......
当我试图理解Func <>委托并且遇到以下情况时,想到了这个想法:
Func<int,int> myDelegate = (y) => IsComposite(10);
Run Code Online (Sandbox Code Playgroud)
这意味着一个委托有一个int类型的参数和一个int类型的返回类型.有五种变体(如果你通过intellisense查看重载).所以我猜我们可以有一个没有返回类型的委托?
所以我有理由说Func <>不是很好,只是我们可以使用的.Net框架中的一个例子,如果需要,创建自定义"func <>"代表以满足我们自己的需求?
谢谢,
我在我的数据库中存储了看起来像的值5XXXXXX,其中X可以是任何数字.换句话说,我需要匹配传入的SQL查询字符串,如5349878.
有谁知道怎么做?
我有不同的情况XXXX7XX,例如,所以它必须是通用的.我不关心在SQL Server中以不同的方式表示模式.
我在.NET中使用c#.
expression ×10
c# ×5
lambda ×4
regex ×2
bash ×1
criteria-api ×1
delegates ×1
evaluation ×1
func ×1
java ×1
jpa ×1
linq ×1
linux ×1
moq ×1
r ×1
reflection ×1
sql ×1
sql-server ×1